基于另一列对Bootstrap DataTable进行排序

3
我有一列数据是基于另一列日期计算得出的,显示格式为年/月/日。我希望这一列能够按照日期列的顺序进行排序,但由于它是一个字符串,所以排序结果不同。

enter image description here

这是我的datatable配置代码。

            "columnDefs": [{  // set default column settings
                'orderable': false,
                'targets': [1, 9]
            }, {
                "searchable": false,
                "targets": [1, 9]
            }],
            "order": [
                [5, "asc"]
            ] // set first column as a default sort by asc

有没有办法将第6列“在工作”排序附加到第5列?

谢谢帮忙。

1个回答

12

好的,找到了这个问题的答案。

Datatable提供了一种通过添加data-order来确定排序顺序而不是表格单元格中包含的值来对正交数据进行排序的方法。下面是一个示例(来自dataTable文档),展示了如何实现这一点 :)

<tr>
    <td data-search="Tiger Nixon">T. Nixon</td>
    <td>System Architect</td>
    <td>Edinburgh</td>
    <td>61</td>
    <td data-order="1303682400">Mon 25th Apr 11</td>
    <td data-order="3120">$3,120/m</td>
</tr>

所以在我的情况下,我需要使用 data-order 将时间戳添加到表格单元格中,以便正确排序。


1
谢谢!在他们的文档中找到你想要的东西很难。 - Steven
2
该死,这正是我在寻找的! - Dylan Richards
2
完美!不错!你救了我! - SrAxi
2
我之前不知道可以用这种方法来对不同数据中的一列进行排序。我总是隐藏其中一列,然后通过目标修复js代码。这种方法更容易理解! - warmwhisky

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接