我正在使用一个网格视图,它在某些情况下也会被json绑定,并且网格的颜色包含日期,所以在从json获取数据时,我需要解析日期。我能够得到约会而不是时间。尝试和搜索太多了。我在下面提到了两种方法,但我没有解决我的问题。
{
function ParseDate(jsonDate) {
date = new Date(parseInt(String(jsonDate).substr(6)));
day = date.getDate();
month = date.getMonth() + 1;
year = date.getFullYear();
return month + "/" + day + "/" + year;
}
}
这给了我一个日期,但我需要时间,所以我又做了一个方法
{
function ParseDate(jsonDate) {
var date = new Date(parseInt(jsonDate.substr(6)));
var formatted = ("0" + (date.getMonth() + 1)).slice(-2) + "/" + ("0" + date.getDate()).slice(-2) + "/" + date.getFullYear() + " " + date.getHours() + ":" + date.getMinutes() + ":" + "0" + date.getSeconds();
return formatted;
}
}
但此函数返回
//07/19/2013 11:38
而不是//7/19/2013 11:38:07 AM
这是期望的结果。请帮我解决这个问题。非常感谢你。另外,我需要显示Am或PM是强制性的
答案 0 :(得分:1)
试试这个:
function ParseDateToLocale(jsonDate) {
var date = new Date(parseInt(jsonDate.substr(6)));
var myDate = new Date(date);
var formatted = myDate.toLocaleString();
return formatted;
}
在此处查看:http://jsfiddle.net/2ft3A/。
答案 1 :(得分:1)
试试这个,这对你有帮助,
function ParseDate(jsonDate) {
var date = new Date(parseInt(jsonDate.substr(6)));
var merd='';
if(date.getHours()>=12)
{
merd='PM';
}
else
{
merd='AM';
}
var formatted = ("0" + (date.getMonth() + 1)).slice(-2) + "/" + ("0" + date.getDate()).slice(-2) + "/" + date.getFullYear() + " " + date.getHours() + ":" + date.getMinutes() + ":" + "0" + date.getSeconds()+ " " + merd;
return formatted;
}
答案 2 :(得分:0)
dateObject.toLocaleTimeString();
(OR)
date.getHours()将返回0-24hrs。根据该值,您可以附加AM或PM