【问题标题】:Data table sort by date only sorts the day数据表按日期排序只对天排序
【发布时间】:2015-05-16 04:49:23
【问题描述】:

我有一个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>  

【问题讨论】:

  • 您能否在您的问题中添加足够的 HTML 以重现该问题?
  • 正在使用什么日期格式?复制这个的演示会有所帮助
  • 23-02-2015 这种格式
  • 这可能是有用的资源。 datatables.net/plug-ins/sorting/date-uk

标签: php jquery sorting datatables date-sorting


【解决方案1】:

您需要扩展 DataTables 排序功能,以便以 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 sorting plug-inDataTables 1.10.x date_uk sorting plug-in 了解更多信息。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-01-29
    • 2017-11-15
    • 1970-01-01
    相关资源
    最近更新 更多