我有一张这样的桌子:
| Update | Name | Code | modification date |
| | name1 | code1 | 2009-12-09 |
| | name2 | otehercode | 2007-09-30 | 其中更新列包含复选框<input type='checkbox' />。
checkbox初始状态是在呈现表之前、从数据库获取行之后确定的(它基于服务器端的一组条件)。
该复选框可以默认选中、默认取消选中或禁用(disabled='disabled' as input attribute)。
我正在使用jQuery's Tablesorter对我的表进行排序。我希望能够按包含复选框的列进行排序。这是怎么可能的(我可以将一些额外的属性传递给我的input元素,如果它有帮助的话……)?
我是否应该编写自己的解析器来处理它?
发布于 2013-03-26 23:22:22
这是Haart答案的更完整/更正确的版本。
$(document).ready(function() {
$.tablesorter.addParser({
id: "input",
is: function(s) {
return false;
},
format: function(s, t, node) {
return $(node).children("input[type=checkbox]").is(':checked') ? 1 : 0;
},
type: "numeric"
});
sorter = $("#table").tablesorter({"headers":{"0":{"sorter":"input"}}});
// The next makes it respond to changes in checkbox values
sorter.bind("sortStart", function(sorter){$("#table").trigger("update");});
}); https://stackoverflow.com/questions/1912957
复制相似问题