数据库日期排序dd-mm-yyyy问题

时间:2015-09-14 08:27:54

标签: javascript jquery datatables

<table id="example">
   <thead>
      <tr>
         <th>Name</th>
         <th>Date</th>
      </tr>
   </thead>
   <tbody>
      <tr>
         <td>A</td>
         <td>30-08-2015</td>
      </tr>
      <tr>
         <td>B</td>
         <td>29-08-2015</td>
      </tr>
      <tr>
         <td>C</td>
         <td>04-09-2015</td>
      </tr>
      <tr>
         <td>D</td>
         <td>01-09-2015</td>
      </tr>
      <tr>
         <td>E</td>
         <td>14-09-2015</td>
      </tr>
   </tbody>
</table>

我的剧本:

$.fn.dataTableExt.oSort, {
    "date-uk-pre": function ( a ) {
        var ukDatea = a.split('-');
        return (ukDatea[2] + ukDatea[1] + ukDatea[0]) * 1;
    },
    "date-uk-asc": function ( a, b ) {
        return ((a < b) ? -1 : ((a > b) ? 1 : 0));
    },
    "date-uk-desc": function ( a, b ) {
        return ((a < b) ? 1 : ((a > b) ? -1 : 0));
    }
};  
var table = $('#example');
var oTable = table.dataTable({
    "columns": [
        null,
        { "type": "date-uk" }
    ],
    "order": [[1,'asc']],
});

我希望显示按日期排序DESC,如何修复它?

1 个答案:

答案 0 :(得分:2)

使用HTML5 data-* attributes - cell data

使用属性data-order并将值作为日期的时间戳(PHP:date("U"))。 例如:

<td data-order="1231718400">Mon 12th Jan 09</td>