用jquery.sortElements实现table排序


Posted in Javascript onMay 04, 2014

项目中要实现table排序的功能。

网上有很多解决方案,很多都基于jQuery。

jquery.tablesorter,大小17KB,不过他的首页在ie10下兼容性有点问题。
DataTables,大小75KB,功能强大,带分页,搜索等功能。
还有插件叫sortElements,很小巧,只有3KB,兼容性也不错,而且在Github上有818个星。

最后我选择用sortElements,实现很简单:

1. 引入jQuery

<script type="text/javascript" src="jquery.js"></script>

2. 引入sortElements.js
<script type="text/javascript" src="jquery.sortElements.js"></script>

3. js 代码
$(document).ready(function(){ 
var table = $('#mytable');//table的id 
$('#sort_header')//要排序的headerid 
.each(function(){ 
var th = $(this), 
thIndex = th.index(), 
inverse = false; th.click(function(){ 
table.find('td').filter(function(){ 
return $(this).index() === thIndex; 
}).sortElements(function(a, b){ 
return $.text([a]) > $.text([b]) ? 
inverse ? -1 : 1 
: inverse ? 1 : -1; 
}, function(){ 
return this.parentNode; 
}); 
inverse = !inverse; 
}); 
}); 
});

4. html代码
<table id="mytable"> 
<tr> 
<th id="sort_header">Facility name</th> 
<th>Phone #</th> 
<th id="city_header">City</th> 
<th>Speciality</th> 
</tr> 
<tr> 
<td>CCC</td> 
<td>00001111</td> 
<td>Amsterdam</td> 
<td>GGG</td> 
</tr> 
... 
</table>
Javascript 相关文章推荐
Javascript 拖拽的一些高级的应用(逐行分析代码,让你轻松了拖拽的原理)
Jan 23 Javascript
JavaScript实现获取dom中class的方法
Feb 09 Javascript
javascript字符串函数汇总
Dec 06 Javascript
基于JS实现textarea中获取动态剩余字数的方法
May 25 Javascript
移动端使用localStorage缓存Js和css文的方法(web开发)
Sep 20 Javascript
微信小程序 es6-promise.js封装请求与处理异步进程
Jun 12 Javascript
JavaScript实现的原生态Tab标签页功能【兼容IE6】
Sep 18 Javascript
bootstrap可编辑下拉框jquery.editable-select
Oct 12 jQuery
用js实现每隔一秒刷新时间的实例(含年月日时分秒)
Oct 25 Javascript
vue 表单之通过v-model绑定单选按钮radio
May 13 Javascript
小程序rich-text组件如何改变内部img图片样式的方法
May 22 Javascript
关于Layui Table隐藏列问题
Sep 16 Javascript
jquery实现的鼠标拖动排序Li或Table
May 04 #Javascript
自己用jQuery写了一个图片的马赛克消失效果
May 04 #Javascript
javascript实现2048游戏示例
May 04 #Javascript
Extjs 4.x 得到form CheckBox 复选框的值
May 04 #Javascript
jquery中的ajax方法怎样通过JSONP进行远程调用
May 04 #Javascript
动态创建script在IE中缓存js文件时导致编码的解决方法
May 04 #Javascript
将HTML的左右尖括号等转义成实体形式的两种实现方式
May 04 #Javascript
You might like
PHP使用CURL实现对带有验证码的网站进行模拟登录的方法
2014/07/23 PHP
php实现用于验证所有类型的信用卡类
2015/03/24 PHP
PHP实现Huffman编码/解码的示例代码
2018/04/20 PHP
Javascript MD4
2006/12/20 Javascript
Extjs3.0 checkboxGroup 动态添加item实现思路
2013/08/14 Javascript
ie8本地图片上传预览示例代码
2014/01/12 Javascript
ExtJS如何设置与获取radio控件的选取状态
2014/01/22 Javascript
jquery选择器之内容过滤选择器详解
2014/01/27 Javascript
封装了一个支持匿名函数的Javascript事件监听器
2014/06/05 Javascript
JavaScript实现带标题的图片轮播特效
2015/05/20 Javascript
RequireJS入门一之实现第一个例子
2015/09/30 Javascript
JS获取checkbox的个数简单实例
2016/08/19 Javascript
vue生成token并保存到本地存储中
2018/07/17 Javascript
详解mpvue小程序中怎么引入iconfont字体图标
2018/10/01 Javascript
vue-cli和v-charts实现可视化图表过程解析
2019/10/08 Javascript
python运行时间的几种方法
2016/06/17 Python
Tensorflow使用tfrecord输入数据格式
2018/06/19 Python
Python matplotlib通过plt.scatter画空心圆标记出特定的点方法
2018/12/13 Python
Python并发:多线程与多进程的详解
2019/01/24 Python
Python实现删除排序数组中重复项的两种方法示例
2019/01/31 Python
在Mac中PyCharm配置python Anaconda环境过程图解
2020/03/11 Python
详解向scrapy中的spider传递参数的几种方法(2种)
2020/09/28 Python
解决pip安装tensorflow中出现的no module named tensorflow.python 问题方法
2021/02/20 Python
使用纯 CSS 创作一个脉动 loader效果的源码
2018/09/28 HTML / CSS
html5的canvas元素使用方法介绍(画矩形、画折线、圆形)
2014/04/14 HTML / CSS
几个常见的软件测试问题
2016/09/07 面试题
公司企业表扬信
2014/01/11 职场文书
简历中自我评价怎么写
2014/02/12 职场文书
党员承诺书格式
2014/05/21 职场文书
品酒会策划方案
2014/05/26 职场文书
体育比赛口号
2014/06/09 职场文书
重大事项社会稳定风险评估方案
2014/06/15 职场文书
2014民事授权委托书范本
2014/09/29 职场文书
2015年青年教师工作总结
2015/05/25 职场文书
Windows下redis下载、redis安装及使用教程
2021/06/02 Redis
JavaScript实现酷炫的鼠标拖尾特效
2022/02/18 Javascript