【发布时间】:2015-02-03 13:13:09
【问题描述】:
简介:
我的 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();
-
生日是 DateTime 类型,所以我无法将其解析为字符串
-
关注blog
-
@ArunPrasanth 就像一个魅力,如果你想为它发布答案!
标签: javascript c# jquery asp.net ajax