我正在尝试创建一个自定义排序系统,以使用特殊的alpha数字格式对行进行排序
列中的数据是距离标注,例如“1.79英里”,“10.21英里”或“9.21英里”
我的问题是,当我对desc进行排序时,它将把10.21放在10.21之后。
我正在使用以下代码。
aaSorting = [[3,'desc']];
我假设我必须使用aoColumnDefs和sType创建特殊定义,但我似乎无法弄清楚它们。
答案 0 :(得分:1)
您可以添加自己的插件进行排序。
查看其他示例https://datatables.net/plug-ins/sorting/
jQuery.extend(jQuery.fn.dataTableExt.oSort, {
"distance-pre": function (a) {
var x = (a == "-") ? 0 : a.replace(/mi/, "");
return parseFloat(x);
},
"distance-asc": function (a, b) {
return ((a < b) ? -1 : ((a > b) ? 1 : 0));
},
"distance-desc": function (a, b) {
return ((a < b) ? 1 : ((a > b) ? -1 : 0));
}
});
用法
type: 'distance'