[英]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.