我想在jQuery TableSorter中添加一个解析器,它允许按日期对 dd.mm.yyyy 格式的列进行排序,例如 17.09.2011
我根据我在网上找到的一些代码尝试了以下内容:
$.tablesorter.addParser({
// set a unique id
id: 'myDateFormat',
is: function (s) {
return false;
},
format: function (s) {
var date = s.split('.');
return new Date(date[2], date[1], date[0]).getTime();
},
type: 'numeric'
});
然后:
$(".myTable").tablesorter( { headers: { 3: { sorter: 'myDateFormat'} } } );
然而,这不起作用......任何想法为什么?
谢谢!
答案 0 :(得分:1)
这似乎对我有用 - demo
该演示使用我的forked version tablesorter,但这不应该改变解析器的工作方式。
答案 1 :(得分:1)
试
// add parser through the tablesorter addParser method
$.tablesorter.addParser({
// set a unique id
id: 'clDate',
is: function (s) {
// return false so this parser is not auto detected
return false;
},
format: function (s) {
// format your data for normalization
var date = s.split("-");
var result = (parseInt(date[2]) * 10000 + parseInt(date[1]) * 100 + parseInt(date[0]));
return result;
},
// set type, either numeric or text
type: 'numeric'
});