微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

javascript-jQuery Tablesorter-保持第一行完整

我正在使用jQuery Tablesorter 2.0 plugin创建可排序的……书籍表.
表格的第一行是所有书籍的摘要,我希望它始终位于最上面.

我需要自定义表排序器的行为,但我认为我不能/应该使用自定义解析器来做到这一点.我想我需要的是一个自定义比较器函数-一个使我自己可以比较任何两行的函数,理想情况下,如果我所寻找的条件未得到满足,还可以调用认行为.

示例算法将是这样的(希望我没有反转我的结果):

function customSort(lhs, rhs, table, column_index) {
    if (lhs === 'magic_str') {
        return -1; // Magic string wins
    }
    if (rhs === 'magic_str') {
        return 1; // Magic string wins
    }
    return defaultSort(lhs, rhs, table, column_index);
}

现在,我知道了一些JS,但不足以撬开一个流行的库,并重写其中的某些部分,特别是作为在我加载原始库之后可以放在顶部的补丁. (那将是理想的).另外,如果我能以其他任何方式完成这种行为,我都会不知所措.

解决方法:

一个更简单的解决方案是尝试使用我的fork of tablesorter,然后将不想分类的行放在单独的tbody中,这不适用于原始的tablesorter.

<table class="tablesorter">
    <thead>
        ...
    </thead>
    <tbody class="tablesorter-infoOnly">
        ... <!-- non-sorting tbody -->
    </tbody>
    <tbody>
        ...
    </tbody>
</table>

由于只有一行,因此您实际上不需要添加“ tablesorter-infoOnly”类名;它确实会阻止将列样式应用于该样式.试用this demo删除tbody类名称以查看区别.

仅供参考,您可以在表格中添加任意数量的裁谈会.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐