[英]ajax: extract json object from array of json
JSON(來自api的內部數組):
[{"id":"001", "name":"john", "age":"40"}, {"id":"002", "name":"jane", "age":"30"}]
阿賈克斯:
$.ajax({
url: 'interface_API.php',
dataType: 'json',
success: function(data)
{
for(var i in data){
var row = data[i];
var id = row[0];
var name = row[1];
var age = row[2];
$('#output').append("<tr width='50%'><td>"+id+"</td><td>"+name+"</td><td>"+age+"</td></tr>");
}
}
});
API使用它來構造:
if(mysqli_num_rows($output)){
while($row = mysqli_fetch_assoc($output)){
$json[] = $row;
}
}
但是我的輸出對於每個.append
都是“未定義”的
我如何從數組中提取每個json對象並追加到頁面?
改變這個:
var id = row[0];
var name = row[1];
var age = row[2];
對此:
var id = row['id'];
var name = row['name'];
var age = row['age'];
或這個:
var id = row.id;
var name = row.name;
var age = row.age;
因為您已經在此處循環:
for(var i in data){
var row = data[i]; // <----here
因此,您只需要使用js對象中的鍵來引用它即可。
您可以這樣更改for循環:
$.ajax({
url: 'interface_API.php',
dataType: 'json',
success: function(data)
{
for(var i in data){
var row = data[i];
var id = row.id;
var name = row.name;
var age = row.age;
$('#output').append("<tr width='50%'><td>"+id+"</td><td>"+name+"</td><td>"+age+"</td></tr>");
}
}
});
請在檢索時使用密鑰標識json對象
var list=[
{"id":"1","text":"test1"},
{"id":"2","text":"test2"},
{"id":"3","text":"test3"},
{"id":"4","text":"test4"}
]
alert(list[2].id)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.