在格式化日期时,angular-datatables不排序

时间:2016-11-28 11:05:06

标签: angularjs angular-datatables

当我想格式化时,我在使用angular-datables插件排序日期时遇到问题。 让我解释 : 当我使用

<td>{{date}}</td>

结果是:

enter image description here

当我使用时:

{{date | date}}

结果是:

enter image description here

但是当我使用时:

{{date | date : 'dd/MM/yyyy'}}

结果是:

enter image description here

即便如此,我还是将其声明为日期格式:

_this.dtColumnDefs = [  
    DTColumnDefBuilder.newColumnDef(0).
    .withOption('type', 'date')
];

任何想法我做错了什么?感谢

2 个答案:

答案 0 :(得分:3)

我们是一个稀有物种,我们这些人使用dd / MM / YYYY格式:)默认date类型仅在“有效”日期格式上起作用,即可以使用{{1}评估的字符串}。欧洲dd / MM / YYYY不是其中之一。在与momentjs混合之前,我认为你可以通过自定义排序插件解决这个问题:

Date.parse()

用法

jQuery.extend( jQuery.fn.dataTableExt.oSort, {
 "Antt-date-pre": function ( a ) {
    if (a == null || a == '') {
      return 0;
    }
    var date = a.split('/');
    return Date.parse(date[1] + '/' + date[0] + '/' + date[2])
  }
});

小型演示 - &gt;的 http://plnkr.co/edit/00vQcoeitZlrQkprN58t?p=preview

答案 1 :(得分:1)

最后,我使用了直接从DataTables提供的答案:https://datatables.net/plug-ins/sorting/date-eu

该插件已弃用,但可以满足我的需求。