[英]How to disable sorting on column in jQuery.tablesorter?
我试图找到一种方法来禁用对列的排序。 我使用jQuery插件tablesorter 。 并且默认情况下,如果您单击标题单元格,它将对列数据进行排序,但是如果我不需要对四列表中的一列或两列使用排序,该怎么办。
提前致谢。
您必须在初始化时传递适当的参数,例如:
{ ...
headers: { 0: { sorter: false} }
}
有关更多信息,请参见以下手册:
您也可以使用html数据属性:
<th data-sorter="false">...</th>
或者您可以使用一个类:
<th class="sorter-false">...</th>
就像是:
$('#selector').tablesorter({headers: {0: { sorter: false}}});
此处明确列出了这一点: http : //tablesorter.com/docs/example-options-headers.html
$(document).ready(function() { $("#myTable").tablesorter({ // pass the headers argument and assing a object headers: { // assign the secound column (we start counting zero) 1: { // disable it by setting the property sorter to false sorter: false }, // assign the third column (we start counting zero) 2: { // disable it by setting the property sorter to false sorter: false } } }); });
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery.tablesorter/2.21.2/js/jquery.tablesorter.min.js"></script> <link rel='stylesheet' href='https://cdnjs.cloudflare.com/ajax/libs/jquery.tablesorter/2.21.2/css/theme.blue.min.css' type='text/css' /> <table id='myTable' cellspacing="1" class="tablesorter-blue"> <thead>> <tr> <th>first name</th> <th>last name</th> <th>age</th> <th>total</th> <th>discount</th> <th>date</th> </tr> </thead> <tbody> <tr> <td>peter</td> <td>parker</td> <td>28</td> <td>$9.99</td> <td>20%</td> <td>jul 6, 2006 8:14 am</td> </tr> <tr> <td>john</td> <td>hood</td> <td>33</td> <td>$19.99</td> <td>25%</td> <td>dec 10, 2002 5:14 am</td> </tr> <tr> <td>clark</td> <td>kent</td> <td>18</td> <td>$15.89</td> <td>44%</td> <td>jan 12, 2003 11:14 am</td> </tr> <tr> <td>bruce</td> <td>almighty</td> <td>45</td> <td>$153.19</td> <td>44%</td> <td>jan 18, 2001 9:12 am</td> </tr> <tr> <td>bruce</td> <td>evans</td> <td>22</td> <td>$13.19</td> <td>11%</td> <td>jan 18, 2007 9:12 am</td> </tr> </tbody> </table>
对于单列xpapad是正确的
对于多列禁用排序
标头:{0:{分类器:错误},1:{分类器:错误},2:{分类器:错误}}
在tablesorter v2.18.1中 ,您现在可以通过标头内元素的类名来定位列; 请注意,该范围在名字列中具有目标的类名称。
的HTML
<table class="tablesorter">
<thead>
<tr>
<th><span class="first-name">First Name</span></th>
...
JS
$("table").tablesorter({
headers: {
'.first-name' : {
sorter: false
}
}
});
在tablesorter v2.0.5和更早的版本中,仅元数据和标头选项方法可用。
在2.3+版本中 ,可以使用以下任何一种方法(优先级相同)来禁用列:
jQuery数据data-sorter="false"
。
<table class="tablesorter"> <thead> <tr> <th data-sorter="false">Age</th> ....
元数据class="{ sorter: false }"
。 (这需要元数据插件)
标头选项headers : { 0 : { sorter: false } }
。
$("table").tablesorter({ headers : { 0 : { sorter: false } })
标头类名称class="sorter-false"
。
<table class="tablesorter"> <thead> <tr> <th class="sorter-false">Discount</th> ....
直接使用jQuery数据禁用列,但是在表初始化之前执行。
$("table thead th:eq(5)").data("sorter", false); $("table").tablesorter(
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.