我有一个使用 jQuery Datatables 1.10.5 的页面。该表工作正常,但我有一个格式为“DM-YY”的日期,例如 10-03-15,(2015 年 3 月 10 日)。
我已将其包含在头中,因此我正在加载 moment.js。
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js" type="text/javascript"></script>
<script type="text/javascript" charset="utf8" src="//cdn.datatables.net/1.10.5/js/jquery.dataTables.min.js"></script>
<script type="text/javascript" src="//cdnjs.cloudflare.com/ajax/libs/moment.js/2.8.4/moment.min.js"></script>
<script type="text/javascript" src="//cdn.datatables.net/plug-ins/f2c75b7247b/sorting/datetime-moment.js"></script>
我称之为初始化表:
$(document).ready( function () {
$.fn.dataTable.moment( 'D-M-YY' );
$('.datatable').DataTable({....options here, language etc..
我想知道我做错了什么,因为该列不会按我的日期排序。我已经阅读了 datatable.net 的所有文档,但似乎我正确地调用了它。
*** 更新我可以使用这个插件,它对输入字段进行排序。 http://datatables.net/plug-ins/sorting/custom-data-source/dom-text
我仍然只能按 yyyy-mm-dd 之类的 UNIX 日期排序。我想按自定义日期 dd-mm-yy 排序。我用它来初始化输入字段:
/* 创建一个数组,其中包含一列中所有输入框的值*/
$.fn.dataTable.ext.order['dom-text-numeric'] = function ( settings, col )
{return this.api().column( col, {order:'index'} ).nodes().map( function ( td, i )
{ return $('input', td).val() * 1; } ); }
然后我定义日期字段编号。3
$('#example').dataTable( { "columns": [ null, null, { "orderDataType":"dom-text", type: 'text' } ] } );
我什至试过这个:
{ "orderDataType":"dom-text", type: 'date' }
是否有有效值“dom-date”?