[英]Execute function depending on multiple ajax calls status
如果它們全部成功,我需要同時進行3個AJAX調用,然后我需要執行一個函數。 如果有任何呼叫失敗,我需要知道是哪個呼叫以及發生了什么錯誤。
我認為jQuery Promise是我所需要的。 我研究了許多在“ when
和“ then
”兌現承諾的情況下進行的工作,但還沒有發現任何解決該特定問題的方法。
我會很感激有人能引導我正確的方向。
稍微冗長一點,但您可以將ajax調用返回的延遲保留在數組中,然后在該數組上使用$.when
來完成所有操作:
var request1 = $.ajax({
url: 'someurl1.php'
}).fail(function() {
alert('request 1 failed');
});
var request2 = $.ajax({
url: 'someurl2.php'
}).fail(function() {
alert('request 2 failed');
});
var request3 = $.ajax({
url: 'someurl3.php'
}).fail(function() {
alert('request 3 failed');
});
$.when.apply($, [request1, request2, request3]).then(function() {
// all done
});
請注意,如果任何調用失敗,則不會調用.then()
快速又骯臟:
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.