DataTables在列名称上进行二级排序单击

时间:2015-04-30 20:07:22

标签: javascript jquery sorting datatables jquery-datatables

如果在页面上点击了第13列但没有中断任何其他点击列的功能,我试图对第1列进行第二次排序。

这是jQuery DataTable代码

$('#table-report').dataTable({
            "aLengthMenu": [[10, 25, 50, 100], [10, 25, 50, 100]],
            "iDisplayLength": 10,
            "bFilter": true,
            "bInfo": false,
            "sEmptyTable": "No data returned for values input.",
            "sDom": '<top>l',
            "sPaginationType": "full_numbers",
            "bJQueryUI": false,
            "aoColumnDefs":
             [
                { 'bSortable': true, "aTargets": [0, 17] },
                { "sType": "time-us", "aTargets": [16] }
             ],
            "oLanguage": {
                "sLengthMenu": "View Per Page _MENU_ ",
                "sSearch": "Search all columns:"
            }
        });

我最接近的是添加

{ targets: [13], orderData: [13, 1] }

"aoColumnDefs"。问题是排序(正确发生 - 主要和次要发生)发生在页面加载上并禁用按任何其他列排序的能力。

有人知道如何仅在单击第13列标题时更改我必须执行的辅助排序,而不是通过单击相应的列标题禁用任何其他列排序的能力吗?

1 个答案:

答案 0 :(得分:1)

看起来你使用较旧版本的Datatables(1.9?)来定义namings的外观

尝试类似这样的1.9:

    "aaSorting": [ [13,'asc'], [1,'asc'] ]"

或者更新到1.10会为您的代码提供一个选项,您尝试更好地运行而不会崩溃。 Allen(Datatables的制造商)在向后兼容性方面非常出色