按多个条件排序

时间:2018-11-19 12:20:31

标签: javascript jquery datatables

我有一栏看起来像这样:

0      // Red colored
0      // Red colored
0 (1)  // Orange colored
0 (2)  // Red colored
0      // Orange colored
0      // Red colored
0 (24) // Orange colored
0 (4)  // Red colored
0      // Orange colored
0 (3)  // Orange colored
1     
1
1 (7)
2
2 (3)
2
... etc

我会得到以下命令:

0      // Red colored
0      // Red colored
0      // Red colored
0 (24) // Red colored
0 (4)  // Red colored
0 (2)  // Red colored
0      // Orange colored
0      // Orange colored
0 (4)  // Orange colored
0 (1)  // Orange colored
1     
1
1 (7)
2
2 (3)
2
... etc

我想使用以下3个条件对数据表中的此列进行排序:首先按数字(0's)顺序,然后按颜色(红色优先)顺序,然后按un parantheses的数字顺序(最高的顺序)。

我在每个data-order中都采用以下格式:0r24,这意味着第一个数字为零,颜色为红色,括号中的数字为24。对其他所有重复。 / p>

我尝试通过执行以下操作来使用Datatables的columnDefs属性来获得结果:

"columnDefs": [
    {
        "type": "num-fmt", 
        "targets": 7
    }, {
        "targets": [7], 
        "render": function ( data, type, row, meta ) {
            return type === 'sort' ?
                   row[7]['@data-order'].replace(/r/g,'0').replace(/o/g,'1') : row[7]['@data-order'];
         }
     }
]

在这里,我尝试将字母or替换为01,以便能够使用所有数字值进行排序,但是它不起作用。知道如何进行这项工作并按照我的说明进行以下操作吗?

0 个答案:

没有答案