jquery-datatables多列排序方向

seb*_*moi 6 javascript sorting jquery-datatables

使用jquery-datatables.

示例:http://jsfiddle.net/b2fLye17/17/

$('#example').DataTable({

    filter:false,
    columnDefs: [
                    {
                        targets: [1],//when sorting age column
                        orderData: [1,2] //sort by age then by salary
                    } 
                ]
});
Run Code Online (Sandbox Code Playgroud)

单击年龄列时,表按年龄递增,然后按工资升序排序.

根据年龄上升然后按工资下降进行排序,我可以选择什么?

谢谢 !

--------------------------编辑1 ---------------------

澄清:当年龄列按升序排序时,它应按年龄递增,然后按工资降序排序.当年龄列按降序排序时,它应按年龄降序排序,然后按工资升序排序

--------------------------编辑2 ---------------------

所需结果的图片在此输入图像描述

小智 1

这里是。它有点被黑客攻击,但我花了几个小时试图找出相同的最终目标 - 对两列进行排序。http://jsfiddle.net/b2fLye17/23/

<td data-age="40">$320</td>
//In custom sort:
var value = parseInt($(td).attr('data-age') + pad(td.innerHTML.substring(1), 10, '0'));
Run Code Online (Sandbox Code Playgroud)

概念:我还没有找到一种方法来访问 foreach 循环中列之外的其他单元格,因此我向我们想要排序的单元格添加了一个“data-”属性。该 data- 属性与我们关心的其他排序列具有相同的值...因此,在我们弄清楚如何访问循环中的其他“相邻”单元格之前,会存在一些重复的数据。

我组合了两个值(隐藏属性和可见值),然后转换回要索引的 int 。由于这些值的长度不同,我用零填充了第二列(4086 与 40086)。