用jquery.sortElements实现table排序_javascript技巧
程序员文章站
2022-05-27 23:38:55
...
项目中要实现table排序的功能。
网上有很多解决方案,很多都基于jQuery。
jquery.tablesorter,大小17KB,不过他的首页在ie10下兼容性有点问题。
DataTables,大小75KB,功能强大,带分页,搜索等功能。
还有插件叫sortElements,很小巧,只有3KB,兼容性也不错,而且在Github上有818个星。
最后我选择用sortElements,实现很简单:
1. 引入jQuery
2. 引入sortElements.js
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代码
网上有很多解决方案,很多都基于jQuery。
jquery.tablesorter,大小17KB,不过他的首页在ie10下兼容性有点问题。
DataTables,大小75KB,功能强大,带分页,搜索等功能。
还有插件叫sortElements,很小巧,只有3KB,兼容性也不错,而且在Github上有818个星。
最后我选择用sortElements,实现很简单:
1. 引入jQuery
复制代码 代码如下:
2. 引入sortElements.js
复制代码 代码如下:
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代码
复制代码 代码如下:
Facility name | Phone # | City | Speciality |
---|---|---|---|
CCC | 00001111 | Amsterdam | GGG |
推荐阅读
-
javascript 实现简单的table排序及table操作练习_javascript技巧
-
JS 实现Table相同行的单元格自动合并示例代码_javascript技巧
-
用javascript实现无刷新更新数据的详细步骤 asp_javascript技巧
-
用js实现键盘方向键翻页功能的代码_javascript技巧
-
JS 实现Table相同行的单元格自动合并示例代码_javascript技巧
-
一个特殊的排序需求的javascript实现代码_javascript技巧
-
用javascript来实现动画导航效果的代码_javascript技巧
-
用CSS+JS实现的进度条效果效果_javascript技巧
-
js,jQuery 排序的实现代码,网页标签排序的实现,标签排序_javascript技巧
-
用CSS+JS实现的进度条效果效果_javascript技巧