日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

jQuery:在一个回调中处理多个请求

發布時間:2025/4/16 编程问答 23 豆豆
生活随笔 收集整理的這篇文章主要介紹了 jQuery:在一个回调中处理多个请求 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

  我曾經為Mozilla Developer Network?開發一個新功能,它需要加載一個基本的腳本文件的同時加載一個JSON請求。因為我們使用的是jQuery,意味著要使用 jQuery.getScript和jQuery.getJSON。我知道這兩者都是異步的并返回一個Deferred(jQuery中的Promise模式實現, 參見:?deffered object)對象,因此我想知道能不能在一個回調里按順序請求它們,就像多數的JavaScript加載器那樣(如curljs?)。我很幸運,使用jQuery就可以用一個回調處理兩個請求。

  jQuery的JavaScript代碼

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

$.when($.getScript('/media/js/wiki-min.js?build=21eb633'),$.getJSON('https://developer.mozilla.org/en-US/demos/feeds/json/featured/') ).then(function(a, b) {// 或者 ".done"// 好了,東西都加載好了,可以干活了});

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

// [response, state, jqxhr], [response, state, jqxhr] ["(function(c){var e=c(".from-search-navigate");if(e…;if(j){g.apply(m,l)}}}})(window,document,jQuery);", "success", Object] [Array[15], "success", Object]

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

$.when($.getScript('/media/js/wiki-min.js?build=21eb633'),$.getJSON('https://developer.mozilla.org/en-US/demos/feeds/json/featured/'),$.get('/') ).then(function(a, b, c) {console.log(a, b, c); });

  Dojo Toolkit很早以前就有類似的功能了,但是我不知道現代jQuery也可以。在一個回調中處理多個請求在請多場合需要用到,可以看出jQuery也在與時俱進。

  原文?davidwalsh.name

總結

以上是生活随笔為你收集整理的jQuery:在一个回调中处理多个请求的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。