[英]Nested getJson() & PHP PDO
我已經看過其他有關此問題和答案,但似乎無法解決這個問題……
我有一個javascript函數:
function getStates(theDiv){
var stateGroupData;
var stateData;
var theGHtml = "";
var theHtml = "<h4>MyPage</h4>";
theHtml = theHtml+"<h5>select a state...</h5>";
$.getJSON("getStateGroups.php", function(data) {
stateGroupData = data;
theHtml = theHtml+"<ul>";
$.each(stateGroupData, function(i,jsonData) {
theHtml = theHtml+"<li><a href='#"+jsonData.groupName+"'>"+jsonData.groupID+"</a></li><br/>";
var theSQL = "getStates.php?gid="+jsonData.groupName;
theGHtml = theGHtml+"<div id='"+jsonData.groupName+"'>";
$.getJSON(theSQL, function(data2) {
stateData = data2;
$.each(stateData, function(i,jsonData2) {
alert(jsonData2.stateName);
theGHtml = theGHtml+"<span sname='"+jsonData2.stateName+"' lat='"+jsonData2.centerLat+"' lon='"+jsonData2.centerLon+"' zom='"+jsonData2.zoom+"'>"+jsonData2.stateName+"</span> ";
});
});
theGHtml = theGHtml+"</div>";
});
theHtml = theHtml+"</ul>";
});
theDiv.html = theHtml+theGHtml;
}
第二個(即嵌套的)getJson不會返回任何東西...兩個PHP文件都僅使用PDO從SAME表中請求數據。 我在每個文件中運行SQL都沒有任何問題,因此SQL似乎還可以。
這是對getJson的調用的同步v。異步問題嗎?
這是對getJson的調用的同步v。異步問題嗎?
大概。 我認為這是您的問題:
stateData = data2;
嘗試將其更改為:
var stateData = data2;
第一個設置全局變量。 第二個變量設置該函數本地的變量。
您可能會受益於重構整個過程,從而只需要進行一個AJAX調用。 看來您正在吸引與某個小組相關的個人。 您可以通過單個腳本在服務器上獲得更好的性能,該腳本可以在需要時返回與該組關聯的人員,否則僅返回該組。
記住,每次AJAX調用都是對服務器的另一次打擊。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.