使用datatables 中文排序

// oSort是排序类型数组, 'chinese-asc'是自己定义的类型的排序(*-asc || *-desc)名称
// 插件应该会根据表格中的内容的类型(string, number, chinese)进行比较排序,
// 如果以chinese类型来排序则用oSort['chinese-asc']和oSort['chinese-desc']的方法
// oSort对应的function里面自定义比较方法
jQuery.fn.dataTableExt.oSort['chinese-asc'] = function(x,y) {
//javascript自带的中文比较函数,具体用法可自行查阅了解
return x.localeCompare(y);
};

jQuery.fn.dataTableExt.oSort['chinese-desc'] = function(x,y) {
return y.localeCompare(x);
};

// aTypes是插件存放表格内容类型的数组
// reg赋值的正则表达式,用来判断是否是中文字符
// 返回值push到aTypes数组,排序时扫描该数组,'chinese'则调用上面两个方法。返回null默认是'string'
jQuery.fn.dataTableExt.aTypes.push(function(sData) {
var reg =/^[\u4e00-\u9fa5]{0,}$/;
if(reg.test(sData)) {
return 'chinese';
}
return null;
});

 

 

前端使用 也是最重要的哦~方法有了就是不怎么用  是不是很头疼呢。。。

 

"columnDefs":
[


{ "aTypes": "chinese-asc", "aTargets": [0] }这里指的是表格的第零列  前提是第零列是中文

 

]  so easy

posted @ 2017-01-10 19:43  教父123  阅读(1521)  评论(0编辑  收藏  举报