我在桌面上使用jQueryTableSorter,每个标题中都有一个标记,就像下拉菜单的按钮一样
<table>
<thead>
<tr><th><div class="clickable">column 0 </div><div class="non-clickable"><img></div> </th><th><div class="clickable">column 1</div><div class="non-clickable"><img></div></th></tr>
</thead>
<tbody>
<tr><td> cell00 </td> <td> cell01 </td></tr>
<tr><td> cell10 </td> <td> cell11 </td></tr>
<tr><td> cell20 </td> <td> cell21 </td></tr>
</tbody>
我不想点击img对列进行排序,所以我编辑了tablesorter插件:
我将(第96行)selectorSort : '> thead th, > thead td'
更改为selectorSort : '.clickable'
,并按预期更改(大部分)工作。问题是我希望能够通过单击另一个按钮来排序(Asc或Desc)。我使用$("#myTable").tablesorter( {sortList: [[0,0]} );
按第一列排序,但在编辑插件后,它不再有效。
这是我在点击第0列时得到的console.log:
&#34; 排序0,0和dir 0时间(2ms) &#34;
答案 0 :(得分:0)
将$("#myTable").tablesorter( {sortList: [[0,0]} )
更改为$("#mytable").data('tablesorter').sortList = [[0,0]];
$("#mytable").trigger('update');
就可以了。
答案 1 :(得分:0)
相反,请使用sorton
method
// Choose a new sort order
var sort = [[0,0],[2,0]],
callback = function(table){
console.log('new sort applied');
};
// Note that the sort value below is inside of another array (inside another set of square brackets)
$("table").trigger("sorton", [sort, callback]);