我遇到了在Javascript中访问JSON结果的麻烦。更具体地说明如何访问响应中的值。
这是我的代码:
自定义类
public class ClientModel
{
public Guid Guid { get; set; }
public String Text1 { get; set; }
public String Text2 { get; set; }
public DateTime Date { get; set; }
}
通用处理程序:
context.Response.ContentType = "application/json";
JavaScriptSerializer serializer = new JavaScriptSerializer();
context.Response.Write(serializer.Serialize(new ClientModel()
{
Text1 = "aaa",
Guid = Guid.Parse("e2e2c9f2-5ddd-4a7e-a223-ddec42e08afb"),
Text2 = "bbb",
Date = DateTime.Now
}));
浏览器中的响应是
{"Guid":"e2e2c9f2-5ddd-4a7e-a223-ddec42e08afb","Text1":"aaa","Text2":"bbb","Datum":"\/Date(1332790780933)\/"}
看起来像一个JSON对象,对吗?
我们假设此结果位于名为result
的变量中。
如何访问此对象内的值?
result[0]
返回{
result.Text1
是undefined
result["Text1"]
为undefined
答案 0 :(得分:0)
我正在使用.ajax
来电,我设置了dataType: "html"
而不是dataType: "json"
现在result.Text1
正常工作