2014-10-11 65 views
0

我试图创建一个自定义排序系统与特殊的字母数字小格式的行进行排序自定义排序jQuery的数据表

在列中的数据是一个长途电话了,如“1.79英里”,“10.21英里“或”9.21英寸“

我的问题是,当我排序desc它会把10.21后的9.21。

我正在使用以下代码。

aaSorting = [[3,'desc']]; 

我假设我必须使用aoColumnDefs和sType创建特殊的定义,但我似乎无法找出它们。

回答

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' 
+0

谢谢。 – James 2014-10-12 02:25:46