簡體   English   中英

嵌套的getJson()和PHP PDO

[英]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>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;";
            });

        });
        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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM