我正在使用PHP,jQuery和JSON。现在,我需要知道如何在JavaScript中解析jQuery数据。
load.php
<?php
...
$json =json_encode($array);
?>
它通过以下数据返回jQuery。
[{"name":"STA","distance":"250","code":25},
{"name":"GIS","distance":"500","code":45}]
jQuery代码
$.getJSON("load.php", function(json){
// Access object
var a = json;
pass(a);
});
现在,我需要将JSON(
a
)传递给文件my.js
中定义的JavaScript:var myjson = {};
function pass(a) {
myjson = a;
//Here, how do I get name, and distance, code.
//I have tried "alert(myjson.name)". It returns undefined.
}
我应该对我的逻辑进行哪些更改?
最佳答案
您有一个JSON对象数组,因此需要遍历该数组以获取每个单独的对象:
for(var x = 0; x < myjson.length; x++) {
alert(myjson[x].name);
// myjson[x].distance, myjson[x].code also available
}
或者,如果您想使用jQuery方式:
jQuery.each(myjson, function(x) {
alert(myjson[x].name);
});
这两个示例都将向您发出“ STA”后跟“ GIS”的警报。
除此之外,正如OIS指出的那样,您正在尝试读取代码中的错误变量。 JSON应位于名为
a
的变量中。