[英]How to show JSON array data by using javascript?
我有一個ajax這樣返回json數組數據,
[{
"UserName": "John",
"Total": "45",
"Correct(%)": "71.1111",
"Incorrect(%)": "28.8889"
}, {
"UserName": "KKK",
"Total": "42",
"Correct(%)": "47.6190",
"Incorrect(%)": "52.3810"
}, {
"UserName": "AAA",
"Total": "54",
"Correct(%)": "81.4815",
"Incorrect(%)": "18.5185"
}, {
"UserName": "BBB",
"Total": "39",
"Correct(%)": "58.9744",
"Incorrect(%)": "41.0256"
}]
我想使用像這樣的javascript顯示數據,
用戶名:John總計:45正確(%):71.1111
不正確(%):28.8889用戶名:KKK總計:42正確(%):47.6190
不正確(%):52.3810用戶名:AAA總計:54正確(%):81.4815
不正確(%):18.5185用戶名:BBB總計:39正確(%):58.9744
不正確(%):41.0256
所以,我這樣嘗試
$.ajax({
url: 'some.php',
type: 'post',
data: {dept:d},
dataType: 'json',
success: function(data) {
console.log("success");
var temp = "";
if(data && data!="") {
for(var i=0; i<data.length; i++) {
$.each(data,function(k,v){
$.each(v,function(k,s){
temp +=k+': <b>'+s+'</b>       ';
});
temp +="<br/><br/>";
console.log(temp);
});
}
document.getElementById('user').innerHTML= temp;
}
});
但是,我為每個用戶分配了五行。 循環時我錯了。 那么,我該怎么做呢?
嘗試刪除for
循環。
//for(var i=0; i<data.length; i++) {
$.each(data,function(k,v){
$.each(v,function(k,s){
temp +=k+': <b>'+s+'</b>       ';
});
temp +="<br/><br/>";
console.log(temp);
});
//}
使用此代碼:
$.ajax({
url: 'some.php',
type: 'post',
data: {dept:d},
dataType: 'json',
success: function(data) {
console.log("success");
var temp = '';
if(data && data != "") {
var temp = '<ul>';
for(var i = 0; i < data.length; i++) {
temp += '<li>UserName: ' + data[i]['UserName'] + ' Total: ' + data[i]['Total'] + ' Correct(%): ' + data[i]['Correct(%)'] + ' Incorrect(%): ' + data[i]['Incorrect(%)'] + '</li>';
}
temp += '</ul>';
document.getElementById('user').innerHTML = temp;
}
}
});
您只需要使用1 $ .each循環,否則就循環遍歷所有數據時間。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.