我正在使用jquery Datatables插件。我按照http://www.codeproject.com/Articles/190718/jQuery-DataTables-and-J2EE-web-application-integra
链接进行了操作我将JSON对象中的Date传递给datatables插件。来自webservice调用的格式类似于
“Sat Jan 10 00:08:00 EST 2009”
,我需要剥离时间,EST和那天,我的意思是它应该看起来像
“2009年1月10日”
并且列在服务器端排序。我只需要在客户端即时剥离数据。我还在学习数据表插件,我不确定是否实现了这个。专家请指出我正确的方向。
答案 0 :(得分:0)
[编辑] 由于看起来日期从服务器返回为字符串,因此您最简单的解决方案可能是正则表达式。试试这个:
function reformatDate(dateStr) {
var r = /^\w{3}\s+(\w{3})\s+(\d{1,2})\s+.*?(\d{4})$/
, m = (''+dateStr).match(r);
return (m) ? m[1]+' '+m[2]+', '+m[3] : dateStr;
}
[原创] 假设您正在使用实际的Date
object并且您不希望招致正确的JavaScript日期争用库(例如优秀的{{3}你可以像这样格式化日期:
var formatDate = (function() {
var months = ['Jan', 'Feb', 'Mar', 'Apr', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'];
return function(dt) {
return months[dt.getMonth()] + ' ' + dt.getDate() + ', ' + dt.getFullYear();
};
})();
formatDate(new Date()); // => "Mar 15, 2012"
答案 1 :(得分:0)
我不确定您是否可以将bServerSide
设置为true
来执行此操作,但您可以使用数据表的aoColumns
选项设置列定义,然后应用列通过
fnRender: function (o, val) {
parse your date here...
return newDateString;
}