繁体   English   中英

数据表按升序排列日期

[英]DataTable sort ascending dates

是否可以按日期升序对数据表进行排序?

这是我当前的表->

当前表

我希望它像日历一样按升序排序,如下所示:

22.01
22.01
...
23.01
...
31.01
01.02

 $(document).ready(function () {
        $('#example').DataTable({
            searching: false,
            paging: false,
            bInfo: false,
            order: [[3, "asc"], [2, "asc"], [1, "asc"]],
            columnDefs: [
                {
                    targets: 3,
                    type: 'date',
                    className: 'mdl-data-table__cell--non-numeric'
                }
            ]
        });
    });

这就是我现在正在使用的,我也尝试过type: date-eu

提前致谢!

更新:

我去了类似的东西, https://datatables.net/plug-ins/sorting/datetime-moment ,工作正常。

感谢帮助

在尝试以下操作之前,您的日期格式应为 MM DD YYYY。 试试这个:`

 let dates = ["01.22.2020", "01.18.2020", "02.02.2020"]; let datesFormatted = []; dates.forEach(i => {datesFormatted.push(new Date(i))}); datesFormatted.sort(function(a, b) { if (a > b) { return 1; } else { return -1; } }); console.info(datesFormatted);

`

如果您可以以 ISO yyyy-mm-dd 格式获取日期,则可以使用HTML5 data-order 属性 将它添加到用你的createdCell你里面columnDefs

  'columnDefs': [
     {
        'targets': 3,
        'createdCell':  function (td, cellData, rowData, row, col) {
           $(td).attr('data-order', row.isodate);
        }
     }
  ]

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM