从JavaScript中获取JSON对象的值

时间:2012-03-29 10:13:22

标签: c# javascript asp.net ajax json

我遇到了在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.Text1undefined result["Text1"]undefined

1 个答案:

答案 0 :(得分:0)

啊,我自己找到了解决方案。我希望将来可以帮助其他人。

我正在使用.ajax来电,我设置了dataType: "html"而不是dataType: "json"

现在result.Text1正常工作