我在
下面有JSON PHP输出{"data_0":{"data_1":{"A":0,"B":0},"data_2":{"C_C":"CC","D_D":"DD"}}}
在jQuery中有代码:
$.ajax({
url : 'process.php',
dateType: 'json',
type: 'POST',
data : {val : data_val},
success: function(data){
$(data.data_0.data_2).each(function(key, value) {
alert(key + " " + value);
});
但是在运行时我收到错误:Uncaught TypeError:无法读取属性' data_2'未定义的。
如何解决?
非常感谢你。
答案 0 :(得分:0)
您需要先使用JSON.parse()
$.ajax({
url : 'process.php',
dataType: 'json',
type: 'POST',
data : {val : data_val},
success: function(data){
data = JSON.parse(data);
$(data.data_0.data_2).each(function(key, value) {
alert(key + " " + value);
});
答案 1 :(得分:0)
改变这个:
dateType: 'json',
到此;
dataType: 'json',
您的类型应为dataType
而不是dateType
。
此外,您应该使用jQuery的$.each()
实用程序方法而不是.each()
:
$.each(data.data_0.data_2, function(key, value) {
alert(key + " " + value);
});
$ .each()函数与$(selector).each()不同,后者用于独占于jQuery对象进行迭代。 $ .each()函数可用于迭代任何集合,无论它是对象还是数组。在数组的情况下,回调每次都传递一个数组索引和相应的数组值。
答案 2 :(得分:0)