[英]Displaying data from the Object returned by JSON Callback
我正在嘗試從服務器獲取數據,並且由於跨域請求,我正在使用JSONP回調。 我只能顯示服務器中的某些數據。 我可以使用來顯示文件中的“統計”信息
function(rtac) {
for(i in rtac) {
rtacs = rtac[i];
$("#rtac-list").append(rtacs.Stats.ItemCount + "<hr />");
}
但是我遇到了名為“數據”的部分。 我努力了 ...
$("#rtac-list").append(rtacs.Data.Number + "<hr />");
...並且它不起作用。
服務器文件返回以下內容:
{
"rtac_edin_0749542489": {
"Data": {
"1": {
"Number": "1",
"Location": "Non fiction (Sighthill)",
"Status": "Available",
"LoanType": "Standard loan",
"DueDate": "",
"Shelfmark": "",
"CopyNo": "A19958",
"ClassNo": "912.4144"
}
},
"Stats": {
"DueDateCount": 0,
"ItemCount": 1
}
},
"rtac_edin_0715810782": {
"Data": {
"1": {
"Number": "1",
"Location": "Non fiction (Sighthill)",
"Status": "Available",
"LoanType": "Standard loan",
"DueDate": "",
"Shelfmark": "",
"CopyNo": "A12675",
"ClassNo": "941.143"
},
"2": {
"Number": "2",
"Location": "Non fiction (Sighthill)",
"Status": "On Loan",
"LoanType": "Standard loan",
"DueDate": "31 March 2015",
"Shelfmark": "",
"CopyNo": "A12675",
"ClassNo": "941.143"
},
"3": {
"Number": "3",
"Location": "Non fiction (Sighthill)",
"Status": "Available",
"LoanType": "Standard loan",
"DueDate": "",
"Shelfmark": "",
"CopyNo": "A12675",
"ClassNo": "941.143"
}
},
"Stats": {
"DueDateCount": 1,
"ItemCount": 2
}
},
"rtac_edin_0862671906": {
"Data": {
"1": {
"Number": "1",
"Location": "Non Fiction (Granton)",
"Status": "Available",
"LoanType": "Standard loan",
"DueDate": "",
"Shelfmark": "",
"CopyNo": "0017564",
"ClassNo": "914.1443"
}
},
"Stats": {
"DueDateCount": 0,
"ItemCount": 1
}
}
}
這是我用於測試的代碼:
<html><head><title>RTAC</title>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>
</head><body>
<div id='rtac-list'></div>
<script type="text/javascript">
$(document).ready(function() {
var url = "http://www.lh2cc.net/cwolf/php/dsetask/index.php";
$.getJSON(url + "?callback=?", null, function(rtac) {
for(i in rtac) {
rtacs = rtac[i];
$("#rtac-list").append(rtacs.Stats.ItemCount + "<hr />");
}
});
});
</script>
</body></html>
該文件中的“數據”項的結構似乎有問題,因為它有3個項,我不確定如何處理。
請協助謝謝。
您需要訪問對象的"1"
部分:
$("#rtac-list").append(rtacs.Data["1"].Number + "<hr />");
要訪問所有Data
結構:
for (j in rtac.Data) {
if (rtac.Data.hasOwnProperty(j)) {
$("#rtac-list").append(rtac.Data[j].Number + "<hr />");
}
}
編輯:
<html><head><title>RTAC</title>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>
</head><body>
<div id='rtac-list'></div>
<script type="text/javascript">
$(document).ready(function() {
var url = "http://www.lh2cc.net/cwolf/php/dsetask/index.php";
$.getJSON(url + "?callback=?", null, function(rtac) {
for(i in rtac) {
rtacs = rtac[i];
for (j in rtacs.Data) {
if (rtacs.Data.hasOwnProperty(j)) {
$("#rtac-list").append(rtacs.Data[j].Number + "<hr />");
}
}
}
});
});
</script>
</body></html>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.