Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/443.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Json数组对象未定义值_Javascript_Php_Jquery_Json_Ajax - Fatal编程技术网

Javascript Json数组对象未定义值

Javascript Json数组对象未定义值,javascript,php,jquery,json,ajax,Javascript,Php,Jquery,Json,Ajax,我正试图通过ajax请求从php获取一个对象数组 到目前为止一切正常,我在javascript{“ID:“9348”,“Name:“Mark”}中的ajax响应中得到了json格式的数组 但是现在如果我尝试使用alert(数据[“ID]”)获取对象 $.ajax({ url:'loaddata.php', 数据类型:'json', 成功:功能(数据){ 警报(数据['ID']); }, 错误:函数(thrownError){ 警报(“错误”); } });从您发布的php代码中,似乎返回了一个

我正试图通过ajax请求从php获取一个对象数组

到目前为止一切正常,我在javascript
{“ID:“9348”,“Name:“Mark”}
中的ajax响应中得到了json格式的数组

但是现在如果我尝试使用
alert(数据[“ID]”)获取对象

$.ajax({
url:'loaddata.php',
数据类型:'json',
成功:功能(数据){
警报(数据['ID']);
},
错误:函数(thrownError){
警报(“错误”);
}

});
从您发布的php代码中,似乎返回了一个数组。因此,您必须按数组索引选择数据集:

警报(数据[0]['ID']);

您的json可能如下所示:


[{“ID”:“9348”,“Name”:“Mark”},…]

您是双重编码

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\u编码

  • 除非您真的希望JSON对象/数组中包含JSON字符串

你能试试data.ID吗?如果你能
console.dir(data)
这样你就可以看到对象的真实外观,这可能会有所帮助。@ssola如果真的没有“ID”“没有任何区别的财产;如果有,那么操作代码将起作用。@Pointy他已经说过返回一个ID属性为的对象。。。所以应该在那里。显然,如果完整的响应是错误的,那么这是另一个问题。@ssola如果真的是这样,那么就没有必要问这个问题,因为OP中的代码可以工作。如果正确复制并粘贴json,那么json无效:
{“ID:”9348,“Name:“Mark”}。
有一个
ID.Protip后缺失:使用浏览器的调试器(每个浏览器都有一个调试器)。它真的很有用