我在2014-03-03 05:00:00的数据库中有一个日期,它以JSON格式呈现为:
日期是/ Date {( - 6xxxxx)/并且我调用此方法来解析它:
function parseJsonDate(dateString) {
var result = new Date(+dateString.replace(/\/Date\((-?\d+)\)\//gi, "$1"));
var result = new Date(parseInt(dateString.replace('/Date(', '')));
result.format("dd-MM-yyyy");
return result;
}
运行时,我会注释掉其中一个结果行,但两者都得到相同的结果:
正在从Jquery模板调用该方法,如:
<tr>
<td>
<span id="approvedDate"><i class="glyphicon glyphicon-time" data-toggle="tooltip"
data-original-title="approved date"></i> ${parseJsonDate(AuditDate)}</span>
</td>
</tr>
修改
什么是布偶......我花了很长时间才想到这是一个JSON vconversion问题,我完全忘了回去查看我的短小精悍的代码。我的ApprovalHistory objec有AuditDate,但我在sql中要求EnteredDate。所以,它按预期进行。
aaaaaaaarrr: - )
答案 0 :(得分:1)
我在那里看到了一些可疑的东西
var result = new Date(+dateString.replace(/\/Date\((-?\d+)\)\//gi, "$1"));
var result = new Date(parseInt(dateString.replace('/Date(', '')));
也许
var s = result.format("dd-MM-yyyy");
return s;
你真的想做什么?
你可以在ajax完成后执行此操作,这将为您节省大量麻烦,不得不一遍又一遍地解析日期(xxxxx)事件
data = data.replace(/\"\\\/Date\((-?\d+)\)\\\/\"/g, '$1')
这会将“Date(xxxx)”转换为xxxx然后你可以调用new Date(xxxx)来创建新的Date对象。
答案 1 :(得分:0)
也许你可以使用这样的东西:
var str = (result.getMonth() + 1) + "-" + result.getDate() + "-" + result.getFullYear();
return str;