我在jQuery Tablesorter plugin中创建了一个自定义解析器。我想在加载页面时使用该自定义解析器对表进行排序。
我试过这个:
<script type="text/javascript">
$(document).ready(function () {
$("#statusTable").tablesorter({ sortList: [[3, 0], [4, 0], [5, 0]]}, { headers: { 3: { sorter: 'status' }, 4: { sorter: 'status' },
5: { sorter: 'status' }, 0: { sorter: false }, 7: { sorter: false} }});
});
</script>
列在页面加载时排序,但按字母顺序排序。
我试过的另一个脚本:
<script type="text/javascript">
$(document).ready(function () {
$("#statusTable").tablesorter({ headers: { 1: { sorter: 'status' }, 2: { sorter: 'status' },
3:{ sorter: 'status'}, 5:{ sorter: false}}}, { sortList: [[1,0],[2,0],[3,0]] }); });
</script>
但是这些列根本没有排序。
最后一个脚本:
<script type="text/javascript">
$(document).ready(function () {
$("#statusTable").tablesorter({ sortList: [[3, 0], [4, 0], [5, 0]], headers: { 3: { sorter: 'status' }, 4: { sorter: 'status' },
5: { sorter: 'status' }}, { headers: { 3: { sorter: 'status' }, 4: { sorter: 'status' },
5: { sorter: 'status' }, 0: { sorter: false }, 7: { sorter: false} }});
});
</script>
但是那个tableorter再也不起作用了。
有人有任何建议吗?
答案 0 :(得分:0)
我认为你对JSON感到满意。您是否尝试过清理代码,并且可能使用缩进来查看您在语法中的位置?
这是您清理的第一个版本:
<script type="text/javascript">
$(document).ready(function () {
$("#statusTable").tablesorter({
sortList: [[3, 0], [4, 0], [5, 0]]},
headers: {
3: { sorter: 'status' },
4: { sorter: 'status' },
5: { sorter: 'status' },
0: { sorter: false },
7: { sorter: false }
}
});
});
</script>
我假设你的第一个是最好的(与你在测试时的第一直觉一样)。你不必要地将headers
包裹在括号中(事实上,从未关闭它)。