2012-08-02 25 views
0

轉到http://starodaj.eu/apitest/index2.html以查看我的代碼如何在不同的APi呼叫完成後進行API調用?

單擊「顯示可用性」。它應該填充輸入。我有一個問題(可能與異步),所以我不能通過一次單擊來填充所有內容。當我多次點擊'ShowAvailability'時 - 一切正常。我該如何解決這個問題?

function callAPI(yourAPIKey){ 
    var enquiry = "http://api.roomex.com/api/hotel?apiKey=" + yourAPIKey; 
    //alert(enquiry); 
    $.ajax({ 
     url: enquiry, 
     type: 'GET', 
     dataType: "jsonp", 
     jsonp: "callback", 
     jsonpCallback: "jsonpCallback2", 
     complete: function (response, responseCode) { 
     }, 
     success: function (json) { 
      $.each(json.Contracts, function (index, contract) { 
       // alert("Count before increament : " + Count); 
       // alert(contract.ContractCode); 
       ContractsArray[Count] = contract.ContractCode; 

       // alert("Count after increament : " + Count); 
       // alert("ContractsArray[Count]: " + ContractsArray[Count]); 
       Count++; 

      }); 
      for(var i = 0; i < Count; i++){ 
       //alert("ContractsArray[" + i + "]: " + ContractsArray[i]); 
       getAvailability(yourAPIKey, ContractsArray[i], startDate, endDate); 
       getRates(yourAPIKey, ContractsArray[i], startDate, endDate); 
       //alert("Finish of ContractsArray[" + i + "]: " + ContractsArray[i]); 
      } 
     } 
    }); 
    } 

回答

1

你的腳本產生錯誤與這些線

jsonpCallback: "jsonpCallback3", 
jsonpCallback: "jsonpCallback", 
jsonpCallback: "jsonpCallback2", 

當我刪除他們只是填滿整個表

+0

感謝ROEST,我該如何解決這些錯誤? – 2012-08-02 11:43:05

+0

很明顯,這些行不是必需的,因此不需要它們,或者可以定義這些回調。 – Roest 2012-08-02 11:48:49

+0

謝謝你!我花了幾個小時解決這個問題,這很簡單.. – 2012-08-02 11:55:19

相關問題