我试图通过ajax请求从php获取一个对象数组。
直到现在一切正常,我在javascript {"ID:"9348","Name":"Mark"}
的ajax响应中以json格式获取我的数组。
但现在如果我尝试使用alert(data["ID"])
$.ajax({
url:'loaddata.php',
dataType:'json',
success:function(data){
alert(data['ID']);
},
error: function (thrownError) {
alert("errore");
}
});

我得到" undefined
"谁能帮帮我???
在我的php文件中我有这个:
$a=array();
while($row = mysql_fetch_array($result,MYSQL_ASSOC)){
$a[] = json_encode (array('ID'=>$row['ID'],'name'=>$row['name']));
}
header("Content-Type: application/json");
echo json_encode($a);

答案 0 :(得分:0)
从您发布的PHP代码中,您似乎返回了一个数组。因此,你必须按数组索引选择数据集:
alert(data[0]['ID']);
你的json可能看起来像这样:
[ {"ID":"9348","Name":"Mark"}, ... ]
答案 1 :(得分:0)
你是双重编码
in-loop: $a[] = json_encode (... // this makes $a an array of json-strings
outside: echo json_encode($a ... // this echos an JSON representation of an array of json-strings
这不起作用,只需生成/收集您的数组,然后最后执行json_encode
一次