这是我的代码;
$(document).ready(function () {
jQuery.tablesorter.addParser({
id: "fancyNumber",
is: function (s) {
return /^[0-9]?[0-9,\.]*$/.test(s);
},
format: function (s) {
return jQuery.tablesorter.formatFloat(s.replace(/./g, ''));
},
type: "numeric"
});
$("#mi-tabla").tablesorter({
headers: { 0: { sorter: 'fancyNumber'} },
widgets: ['zebra']
});
}); 问题是它的顺序如下:
1.010.336 - 1.067.205 - 1.114 - 1.118.310
它应该是:
1.114 - 1.010.336 - 1.067.205 - 1.118.310
你能帮帮我吗?
谢谢
发布于 2016-02-04 18:24:15
我是这样解决的:
$(document).ready(function () {
jQuery.tablesorter.addParser({
id: "number",
is: function (s) {
return /^[0-9]?[0-9,\.]*$/.test(s);
},
format: function (s) {
return jQuery.tablesorter.formatFloat(s.replace(new RegExp(/[.]/g), ""));
},
type: "numeric"
});
jQuery.tablesorter.addParser({
id: "time",
is: function (s) {
return true;
},
format: function (s) {
return jQuery.tablesorter.formatFloat(s.replace(new RegExp(/[:]/g), ""));
},
type: "numeric"
});
$("#miTable").tablesorter({
headers: {
2: { sorter: 'number'},
4: { sorter: 'number'} ,
7: { sorter: 'number'} ,
9: { sorter: 'time'} ,
},
widgets: ['zebra']
});
});有了这个,你就可以用分隔符对数字进行正确的排序了。
但我还想对字段9进行排序
字段9执行此操作
02:32 - 02:27 - 32:00 - 24:52 - 29:08- 28:01
它应该是:
32:00 - 29:08 - 28:01 - 24:52 - 02:32 - 02:27
有什么想法吗?
谢谢
https://stackoverflow.com/questions/35134668
复制相似问题