如何使用jQuery读取多级Json数据?

时间:2009-01-19 08:32:49

标签: jquery json

这是我的Json数据:

[{"ok" : false,
  "details" : [{"n" : "Email",
                "v" : "The email address you entered is not correct."},
               {"n" : "NameFull",
                "v" : "Please enter your full name."}]
 }]

我发现读取sigle级别的Json数据非常容易,但对于上面的多级数据,我无法通过搜索互联网找到答案。我只想阅读上面的数值。就像在“细节”下读取“n”和“v”的值一样。

2 个答案:

答案 0 :(得分:6)

数据位于数组

请注意数据周围的方括号。您必须在上面的数据集中索引数组。

这可以让您访问电子邮件值:

var json = '[{"ok":false,"details":[{"n":"Email","v":"The email address you entered is not correct."},{"n":"NameFull","v":"Please enter your full name."}]}]';

var k = eval( json );

alert( k[0].details[0].v );

这是出现的警告文字:

The email address you entered is not correct.

也许你的JSON源把它放在一个数组中,因为他们想要返回多个元素?

实际上,你不需要jQuery。 JSON代表JavaScript Object Notation。这基本上意味着它是一个Javascript代码块,可以直接在JavaScript中进行评估,以获取序列化数据,在您的情况下恰好是一个数组。

答案 1 :(得分:1)

抱歉,也许我不明白你的问题。这不适合你?

var data = eval('(' + strJson + ')');