欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  web前端

jQuery表格排序组件-tablesorter使用示例_jquery

程序员文章站 2022-04-12 13:49:42
...
一、引入文件

复制代码 代码如下:


<script type="text/javascript" src="js/jquery.js?1.1.9"></script>
<script type="text/javascript" src="js/jquery.tablesorter.js?1.1.9"></script>
<!-- 引入以下样式则表头出现排序图标,同时引入图片 -->
<link href="css/style.css?1.1.9" rel="stylesheet" type="text/css" >


效果如图:
jQuery表格排序组件-tablesorter使用示例_jquery
二、标准的HTML表格,必须包括thead和tbody标签

复制代码 代码如下:


<table id="myTable" class="tablesorter">
<thead>
<tr>
<th>Name</th>
<th>Sex</th>
<th>Address</th>
</tr>
</thead>
<tbody>
<tr>
<td>zhangsan</td>
<td>boy</td>
<td>beijing</td>
</tr>
<tr>
<td>lisi</td>
<td>girl</td>
<td>shanghai</td>
</tr>
<tr>
...略
</tr>
</tbody>
</table>


三、设置table可排序

复制代码 代码如下:


$(document).ready(function(){
//第一列不进行排序(索引从0开始)
$.tablesorter.defaults.headers = {0: {sorter: false}};
$(".tablesorter").tablesorter();
});


官方文档:http://tablesorter.com/docs/

补充说明:

在使用过程遇到的一个问题,我的表格数据是通过ajax获取的,首页进行排序的时候没问题

当进行下一页排序的时候,会把上页的数据也重新显示出来,解决这个问题可以在你ajax获取数据之后

触发"update"事件,代码如下:

复制代码 代码如下:


$(".tablesorter").trigger("update");


以上问题着实头疼了很久,刚开始用的官网上的Pager plugin,发现这个不太合适。

又网上查资料 整理以下代码:

复制代码 代码如下:


$(".tablesorter tbody tr").addClass("delete");
$(".tablesorter tbody tr.delete").remove();
$("table tbody").append(html);
$(".tablesorter").trigger("appendCache");
$(".tablesorter").trigger("update");
$(".tablesorter").trigger("sorton",[[[2,1],[0,0]]]);


于是都用上了,久经测试 发现只有$(".tablesorter").trigger("update");这一句能解决问题

其他的不知道是什么东东。

所需文件下载地址:http://xiazai.jb51.net/201405/yuanma/jquery.tablesorter.zip

style.css及图片在themes\blue路径下。

相关标签: jQuery 表格排序