我想在表中对列进行排序,其中包含类似“yyyy-mm-dd hh:mm:ss S:更多字符串”的数据。 这个数据是字符串。我正在使用jquery.tablesorter 2.0根据日期对其进行排序。我无法对它进行排序。你能帮忙吗......
艾米
答案 0 :(得分:1)
您需要使用其中date-extract parsers available here和here is a demo之一:
$.tablesorter.addParser({
id: "extractYYYYMMDD",
is: function (s) {
// don't auto detect this parser
return false;
},
format: function (s, table) {
var date = s.replace(/\s+/g, " ").replace(/[\-.,]/g, "/").match(/(\d{4}[\/\s]\d{1,2}[\/\s]\d{1,2}(\s+\d{1,2}:\d{2}(:\d{2})?(\s+[AP]M)?)?)/i);
if (date) {
date = date[0].replace(/(\d{4})[\/\s](\d{1,2})[\/\s](\d{1,2})/, "$2/$3/$1");
return $.tablesorter.formatFloat((new Date(date).getTime() || ''), table) || s;
}
return s;
},
type: "numeric"
});
$('table').tablesorter({
theme: 'blackice',
headers: {
1: {
sorter: 'extractYYYYMMDD'
}
},
widgets: ['zebra', 'columns']
});