簡介: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