2009-5
23
在以往实现表格数据排序分页功能,往往要求助于复杂的动态语言。下面为大家提供一个通过Javascript实现table表格排序分页功能的解决方案。
首先看一下最终效果:在线示例
如果你对它的效果还算满意的话,请继续看它有哪些功能特点及如何使用,你会发现是如此简单。
功能特色:
- 实现表格的列排序功能(点击表头,切换该列升降序),也可以指定哪一列不排序;
- 实现当前排序列高亮显示;
- 实现表格奇偶行不同颜色,即换行变色;
- 实现表格分页功能,可指定是否开启分页功能及每页行数;
- 排序数据支持数据类型自动识别(这点很强大)。例如:整型数据、浮点型数据、字母、电话号码、日期、链接
- 表格外观样式可通过CSS灵活定制
- 所需要引用的js文件非常小巧,压缩版仅2.5k
- 使用非常简单,可进行参数配置
使用方法:
- 引用本功能需要的js文件;
- 初始化排序对象并设置参数,具体如下:
var sorter = new TINY.table.sorter(”sorter”); //定义排序对象,注意前面的变量名称和后面的参数保持一致
sorter.head = “head”; //指定表头的class
sorter.asc = “asc”; //指定升序列的class
sorter.desc = “desc”; //指定降序列的class
sorter.even = “evenrow”; //指定奇数行的class
sorter.odd = “oddrow”; //指定偶数列行class
sorter.evensel = “evenselected”; //指定当前排序列奇数行的class
sorter.oddsel = “oddselected”; //指定当前排序列偶数行的class
sorter.paginate = true; //指定表格数据是否排序
sorter.currentid = “currentpage”; //获取当前页码的dom对象id
sorter.limitid = “pagelimit”; //获取总页数dom对象id
sorter.init(”table”,1); //初始化表格,第一个参数是要初始化表格table的id,第二个参数是默认的排序列索引,0为第一列 - 如果哪一些不需要排序,可以再表头th节点的class赋值为nosort
- 通过上面参数配置时指定的class,定义表格css样式
其它说明:
- 该功能在浏览器Firefox 2/3, IE 6/7/8, Opera, Safari and Chrome下测试通过。
- 排序数据不支持中文数据,这是一个缺陷
- 本功能来源
示例源码下载:通过javasrcript实现table表格排序分页功能 [下载次数:1326]
延伸阅读:
- 保持新鲜感:网页每次加载不同样式的实现方法
- 实现文字高亮功能的两种解决方案(Javascript/Jquery)
- 通过javascript实现的快速编码解码服务
- 简洁易用的html编辑器——TinyEditor
- 向大师们学习Javascript(视频、PPT)
- CSS中文速查表(CSS Cheat Sheet)
- 强大的Jquery图表绘制插件 —— jqPlot
- HTML实体符号代码速查表
版权声明:
本站内容受著作权法保护。个人网站、blog转载时请遵循 “署名-非商业用途-保持一致” 的创作共用协议;商业网站或媒体未授权不得复制本站内容。
友情提示:
如对本文有任何疑问,或在示例的使用中遇到问题,或有好的建议,欢迎在下面留言共同学习,有问必答。


怎么能不支持中文..
我也想过这个问题,支持中文是关键啊。
我的改进思路是:1.检测单元格内容的首个字符,若为中文则排在英文前面;2.获取中文拼音首字母(网上有现成的解决方案),按拼音顺序进行中文排序。
中文解决我知道 我写个代码出来吧
中文排序我已经解决,代码和实例在这里…
http://vb2005xu.javaeye.com/admin/blogs/481236
中文排序我已经解决,代码和实例在这里…
http://vb2005xu.javaeye.com/blog/481236
非常感谢,这下它的实用性更好了
不能下载了,急需这个例子,希望能发到我的邮箱里,谢谢~~~~~~~~~!!!!!
不能下载了,急需这个例子,希望能发到我的邮箱里,谢谢~~~~~~~~~!!!!!
我的邮箱是:faa171544@163.com
经测试数据量大时排序特慢