我有一个由json_encode()检索的数组。当我执行
时$.getJSON('beta.php' , function(data){
console.log(data);
});
我得到的结果如下
[
Object { StuId="1", fName="Saman", more...},
Object { StuId="2", fName="Marry", more...},
Object { StuId="3", fName="Navjoth", more...},
Object { StuId="4", fName="Jassu", more...}
]
我正在尝试使用
迭代这个结果$.each(data, function(key, value){
for(var key in value){
if(value.hasOwnProperty(key)){
$("#article tbody").html(
"<tr><td>" + value.StuId +
"</td><td>" + value.fName +
"</td><td>" + value.lName +
"</td><td>" + value.age +
"</td><td>" + value.grade +
"</td></tr>");
$("article tbody").appendTo("document.body");
}
}
});
。我猜这是不可能的,因为上面的数组格式。
如果有人可以解释为什么会发生这种情况以及如何纠正它,我将非常感激。我想知道如何将上述内容转换为以下格式。
[
{"StuId":"1","fName":"Saman","lName":"Kumara","age":"14","grade":"A"},
{"StuId":"2","fName":"Marry","lName":"Vass","age":"12","grade":"B"},
{"StuId":"3","fName":"Navjoth","lName":"Bogal","age":"32","grade":"A"},
{"StuId":"4","fName":"Jassu","lName":"Singh","age":"22","grade":"E"}
]
答案 0 :(得分:2)
每次都会用不同的值覆盖表格html。
$(document).ready(function() {
var html = "";
var data = [
{ StuId:"1", fName:"Saman"},
{ StuId:"2", fName:"Marry"},
{ StuId:"3", fName:"Navjoth"},
{ StuId:"4", fName:"Jassu"}
]
$.each(data, function(key, value){
console.log(value + "--" + key);
html += "<div><span>" + value.StuId + "</span><span>" + value.fName + "</span></div>";
});
$('body').html(html)
});
JavaScript中的循环与其他语言不同。你需要关闭。
看看这里:
答案 1 :(得分:0)
基础对象是一个javascript数组,所以你不能:
$.each(data, function(item) {
var html = "<tr><td>" + item.StuId + "</td><td>" + item.fname + "</td></tr>";
// etc.
});