我正在尝试覆盖tablesorter行为,但它不遵循我告诉它的内容。
determineSorting
是一个确定列应如何排序的函数。如果我从一列到另一列单击,它将对该列ASC进行排序。否则,它会反转排序。假设此函数返回正确的值。
tableSort_click
应该对表进行排序。 columnIndex
和sortIndex
具有正确的值,但由于某种原因,触发器是错误的。当我移动到另一列时,该列按DESC排序。但是,对该列的成功点击是正确的。如果是DESC,它将成为ASC。
可能是错误行为的原因是什么?是不是可以覆盖tablesorter的默认排序?
$('#sortable-table').tablesorter();
$("#sortable-table th").click(tableSort_click);
function tableSort_click() {
var sortInfo = determineSorting(this.id);
var columnId = sortInfo.elemId;
var sortOrder = sortInfo.sortOrder;
if (columnId && sortOrder) {
var columnIndex = $("#" + columnId).index();
// determine sort index
var sortIndex = -1;
if ("asc" == sortOrder) {
sortIndex = 0;
} else if ("desc" == sortOrder) {
sortIndex = 1;
}
// sort table
if (sortIndex > -1) {
var sorting = [[columnIndex, sortIndex]];
$('#assign-measures').trigger("sorton",[sorting]);
}
}
}