天天看點

jQuery:在一個回調中處理多個請求

我曾經為 開發一個新功能,它需要加載一個基本的腳本檔案的同時加載一個JSON請求。因為我們使用的是jQuery,意味着要使用

jQuery.getScript和jQuery.getJSON。我知道這兩者都是異步的并傳回一個Deferred(jQuery中的Promise模式實作,

參見: )對象,是以我想知道能不能在一個回調裡按順序請求它們,就像多數的JavaScript加載器那樣(如 )。我很幸運,使用jQuery就可以用一個回調處理兩個請求。

  就像我剛才提到的,我需要加載一個腳本和一個JSON檔案,就像這樣:

  當資源檔案加載完時,done或者callback就會被觸發,我就知道已經請求完了。每一個請求都傳回了不同的回調參數,如上面的傳回參數就像這樣:

  如果我們希望再加載一個傳統的Ajax請求,就像擷取一個HTML模闆,我們可以這樣: