简介:ASP.NET解析结果的日期时间从Ajax调用javascript日期
我有我的ASP.NET页面上WebMethod
返回一个Person
对象。 其中一个字段是Birthday
这是DateTime
属性。
的WebMethod
[WebMethod]
public static Person GetPerson()
{
Person p = new Person() {
Id = 1,
Name = "Test",
Birthday = new DateTime(1988, 9, 13)
};
return p;
}
如果我让使用$.ajax()
电话,我得到的服务器与Person
对象的响应。
Ajax调用
// Class instance
var Ajaxcalls = function() {
}
_$.extend(Ajaxcalls, {
GetPerson: function (label) {
var self = label instanceof _$ ? label : $(label);
_$.ajax({
url: 'Default.aspx/GetPerson',
type: "POST",
dataType: "json",
contentType: "application/json; charset=utf-8",
success: function (data) {
console.log(JSON.stringify(data.d));
self.html(new Date(Date.parse(data.d.Birthday)));
}
});
}
});
结果:
{"__type":"AjaxTest.Classes.Person","Id":1,"Name":"Test","Birthday":"/Date(590104800000)/"}
问题
怎么办我将Birthday
[/ Date(590104800000)/]解析为javascript/jQuery日期? 我试过new Date(Date.parse(data.d.Birthday))
,但它给了我一个Invalid date
。
在您的webmethod中尝试此代码Birthday = new DateTime(1988,9,13).ToLongDateString(); – 2014-12-05 11:23:13
生日是DateTime类型,所以我不能解析它到一个字符串 – Mivaweb 2014-12-05 11:24:48
请按照此[博客](http://www.hanselman.com/blog/OnTheNightmareThatIsJSONDatesPlusJSONNETAndASPNETWebAPI.aspx) – chridam 2014-12-05 11:25:14