2015-07-21 66 views
1

這篇文章需要刪除!這篇文章需要刪除

+0

我在工作,不能運行你的代碼,但是我在失敗的例子中返回的值是什麼?我懷疑這不是你想象的那樣......在回調中加入一些測試,找出真正發生的事情。 – wwwmarty

+0

基於console.log(res.data)。我從URL路徑中獲得正確數量的響應。它只是不會在.html(res.data)的前端渲染。我添加了控制檯日誌,似乎我被困在迭代2。你有你的HTML頁面

?我將開始一個jsBin –

回答

1

問題是它同時執行所有的GET,因爲ASYNC它仍然在等待響應。一旦響應回來,它會使用I的設置值,即,可能是,無論我什麼時候結束循環終止。你應該像這樣遞歸函數:

return { 
    init: function(Args) { 
     _args = Args; 
     var container = _args[3].split(','); 
     jQuery(document).ready(function($) { 
      function makeCall(URL, counter) { 
       $.getJSON(getJSONURL, 'id=' + _args[0], function(res) { 
        $("#" + container[counter]).html(res.data); 
       }); 
      } 

      for (i = 0; i < container.length; i++) { 
       var getJSONURL = 'http://www.thecashwidget.com/widget/frame.php?callback=?&c=' + _args[1] + '&r=' + _args[2]; 
       makeCall(getJSONURL, i) 
      } 
     }); 
    } 
}; 
})();