所以我试图从php文件向js发送一个json对象数组。
我正在使用的方法似乎正在工作,因为我使用console.log打印我得到的对象(数组),我得到了我真正发送的以下格式
(
[0] => {"id":"1","name":"mmdftd","phone":"5785","year":"2013","app_status":"in_progress"}
[1] => {"id":"2","name":"shsoshsdo","phone":"58","year":"2013","app_status":"in_progress"}
)
但是我在阅读这个数组时面临一个问题
我尝试了不同的方式来访问它
第一种方式:.each功能
$(data).each(function() {
console.log("This| " + this);
console.log("ID| " + val.id);
console.log("Name| " + val.name);
console.log("Phone| " + val.phone);
console.log("Year| " + val.year);
console.log("APP Status| " + val.app_status);
}
然而,这会导致以下错误
Uncaught Error: Syntax error, unrecognized expression: Array
第二种方式:使用while loog 我正在使用这个条件循环
while(data[i] != null)
然而,这导致无限循环
访问此类阵列的最佳做法是什么? 提前致谢
答案 0 :(得分:1)
关于PHP:
$data = array(
[0] => array("id"=>"1","name"=>"mmdftd","phone"=>"5785","year"=>"2013","app_status"=>"in_progress"),
[1] => array("id"=>"2","name"=>"shsoshsdo","phone"=>"58","year"=>"2013","app_status"=>"in_progress")
)
echo json_encode($data);
在JavaScript上:
假设您通过ajax请求获取数据。
$.get('url-to-php-file.php', function(data) {
data = JSON.parse(data);
// Here you can do whatever you want with the data
});
答案 1 :(得分:1)
尝试以下方法......
$.each(data, function(key, value){
var obj = JSON.parse(value);
$.each(obj, function(key2, value2){
console.log(key2 + ' - ' + value2);
});
});