使用Datatable jQuery插件对日期值进行排序
我正在使用datatable jQuery插件;对包含文本和数字的列进行排序时效果很好,但对包含日期值的列进行排序时我遇到了一个问题 例如,当我单击日期列时,我得到:使用Datatable jQuery插件对日期值进行排序,jquery,datatables,Jquery,Datatables,我正在使用datatable jQuery插件;对包含文本和数字的列进行排序时效果很好,但对包含日期值的列进行排序时我遇到了一个问题 例如,当我单击日期列时,我得到: 01-03-2012 27-02-2012 29-02-2012 ... ... 然而,真正的顺序应该是这样的: 01-03-2012 29-02-2012 27-02-2012 注意:我使用的是法语日期格式d-m-Y你看了吗 以下内容直接从该页复制。您可能需要稍微调整代码(例如,拆分-而不是/等),但大部分工作都是为您完成的
01-03-2012
27-02-2012
29-02-2012
...
...
然而,真正的顺序应该是这样的:
01-03-2012
29-02-2012
27-02-2012
注意:我使用的是法语日期格式d-m-Y
你看了吗
以下内容直接从该页复制。您可能需要稍微调整代码(例如,拆分-
而不是/
等),但大部分工作都是为您完成的:
日期(日/月/年)
DataTables内部日期排序答复日期。parse()是
是Javascript语言的,但您可能希望按
不认识。下面是一个插件,用于在
格式为年月日。注:提供了一个类型检测插件,用于
需要时自动选择此类型的排序
jQuery.fn.dataTableExt.oSort['uk_date-asc']=函数(a,b){
var-ukDatea=a.split('/');
var-ukDateb=b.split('/');
变量x=(ukDatea[2]+ukDatea[1]+ukDatea[0])*1;
变量y=(ukDateb[2]+ukDateb[1]+ukDateb[0])*1;
回报率((xy)?1:0);
};
jQuery.fn.dataTableExt.oSort['uk_date-desc']=函数(a,b){
var-ukDatea=a.split('/');
var-ukDateb=b.split('/');
变量x=(ukDatea[2]+ukDatea[1]+ukDatea[0])*1;
变量y=(ukDateb[2]+ukDateb[1]+ukDateb[0])*1;
回报率((xy)?-1:0);
};
如何将此代码添加到插件中,或者如何调用此函数仅在单击日期列时进行排序。。。?
jQuery.fn.dataTableExt.oSort['uk_date-asc'] = function(a,b) {
var ukDatea = a.split('/');
var ukDateb = b.split('/');
var x = (ukDatea[2] + ukDatea[1] + ukDatea[0]) * 1;
var y = (ukDateb[2] + ukDateb[1] + ukDateb[0]) * 1;
return ((x < y) ? -1 : ((x > y) ? 1 : 0));
};
jQuery.fn.dataTableExt.oSort['uk_date-desc'] = function(a,b) {
var ukDatea = a.split('/');
var ukDateb = b.split('/');
var x = (ukDatea[2] + ukDatea[1] + ukDatea[0]) * 1;
var y = (ukDateb[2] + ukDateb[1] + ukDateb[0]) * 1;
return ((x < y) ? 1 : ((x > y) ? -1 : 0));
};