我正在使用jquery tablesorter插件對錶進行排序。在我的表格中,列表以mm/yy格式顯示日期。使用jQuery tablesorter排序mm/yy日期
<tr>
<td class="col-name">...</td>
...
<td rel="2000" class="col-dob">10/00</td>
...
</tr>
<tr>
<td class="col-name">...</td>
...
<td rel="1986" class="col-dob">11/86</td>
...
</tr>
注:
- 每個單元都有一個唯一的類
- 日期被顯示在MM/YY格式
- 細胞與日期接收年以及
我的jQuery代碼如下:
// add parser through the tablesorter addParser method
$.tablesorter.addParser({
// set a unique id
id: 'user-birthdate',
is: function(s) {
// return false so this parser is not auto detected
return false;
},
format: function(s) {
// format your data for normalization
var dateSplit = s.split('/');
if(2 !== dateSplit.length)
return 0;
return new Date(dateSplit[1], dateSplit[0], 1);
},
// set type, either numeric or text
type: 'numeric'
});
myClass.init = function() {
$('.module .user table').tablesorter({
sortList: [[0,0]],
widgets: ['zebra'],
headers: {
5: {
sorter:'user-birthdate'
}
}
});
}
myClass.init();
我的問題是,tableSorter將00解釋爲1900年而不是2000年,因此排序後的數據不正確。
任何線索我該如何解決這個問題?我正在使用jQuery 1.2.6和最新版本的tablesorter。
謝謝大衛。等待星期一進行測試。將在這裏更新。 – hitec 2009-01-18 17:25:25