我有一个Datatable
,它是一个项目列表,我想将日期列对下降。它有效,但仅分类一天。
我想要的是最后一个添加的项目。
我的脚本是:
<script>
$(function(){
/* Initialize Bootstrap Datatables Integration */
App.datatables();
/* Initialize Datatables */
$('#manage-table').dataTable({
"aoColumnDefs": [ { "bSortable": false, "aTargets": [ 0 ] } ],
"iDisplayLength": 10,
"aLengthMenu": [[10, 20, -1], [10, 20, "All"]],
"aaSorting": [[ 3, "desc" ]] //date column
});
/* Add placeholder attribute to the search input */
$('.dataTables_filter input').attr('placeholder', 'Search');
});
</script>
您需要将数据表分类功能扩展到格式DD-MM-YYYY
的日期。从您的初始化代码来看,很可能您正在使用DataTables 1.9.x。
请参见下面的更新代码,我省略了未更改的代码:
jQuery.extend(jQuery.fn.dataTableExt.oSort, {
"date-uk2-pre": function (a) {
if (a == null || a == "") {
return 0;
}
var ukDatea = a.split('-');
return (ukDatea[2] + ukDatea[1] + ukDatea[0]) * 1;
},
"date-uk2-asc": function (a, b) {
return ((a < b) ? -1 : ((a > b) ? 1 : 0));
},
"date-uk2-desc": function (a, b) {
return ((a < b) ? 1 : ((a > b) ? -1 : 0));
}
});
/* Initialize Datatables */
$('#manage-table').dataTable({
"aoColumnDefs": [
{ "bSortable": false, "aTargets": [ 0 ] },
{ "sType": "date-uk2", "aTargets": [ 3 ] }
],
"iDisplayLength": 10,
"aLengthMenu": [[10, 20, -1], [10, 20, "All"]],
"aaSorting": [[ 3, "desc" ]] //date column
});
我已经修改了原始date_uk
排序插件,以通过DD-MM-YYYY
而不是DD/MM/YYYY
。
请参阅DataTables 1.9.x date_uk
分类插件或数据插件1.10.x date_uk
分类插件有关更多信息。