2010-02-27 48 views
1

什麼是循環瀏覽ajax調用結果,發送另一個ajax調用,並使用結果繪製表的最佳方法? 我在循環內使用jquery $ .ajax遇到了很大的麻煩。即使當我將async設置爲false時。我從來不知道最後一點數據何時可用。我嘗試將所有數據推送到包含數組的對象,但是當數組完全加載時,我需要調用表來繪製。循環內的Ajax連續調用

var that = this; 

jobdata.ajaxCall(function(json) { 
     $.each(json, function(p, pitem) { 

      var itemObj = that.getItembyId(pitem.ItemCode); 
      if (itemObj === undefined) 
      { 
       itemObj = new Item(pitem.ItemCode); 
      } 
      itemObj.loadItemDetail(function() { 
       that.itemlist.push(itemObj); 

      }); 


     }); 

回答

2

由於您要返回JSON字符串,爲何不將整個結果放入JSON字符串中。那麼你只能做一個AJAX調用。成功回調將用於解析JSON對象並填充表。

也許是這樣的:

$.ajax({ 
     url: url, 
     dataType: 'json',   
     success: callback 
    }); 

    function callback(table){ 
     $.each(table.row, function(row){ 
      //process each row  
     }); 
    } 
+0

我很想,但第一個結果是一個Web服務,第二個是從數據庫。他們來自兩個不同的來源。 – 2010-02-27 12:00:04