AJAX請求將被用戶點擊來啓動如何在所有ajax完成時觸發一個函數?
這是不可能知道有多少請求將被髮送
我試過ajaxComplete,但它不工作,我覺得它不能檢測AJAX頁面加載後。
function ajax1() {
$.ajax({
url: 'getCount.php',
type: 'GET',
dataType: 'html',
success: function (data) {
var count = parseInt(data);
for (var i = 0; i < count; i++) {
ajax2();
}
}
});
}
function ajax2() {
$.ajax({
url: 'getCount2.php',
type: 'GET',
dataType: 'html',
success: function (data) {
var count = parseInt(data);
for (var i = 0; i < count; i++) {
ajax3();
}
}
});
}
function ajax3() {
$.ajax({
url: 'ajax3.php',
type: 'GET',
dataType: 'html',
success: function (data) {
//do something
}
});
}
$(document).ajaxComplete(function (event, xhr, settings) {
alert('Complete');
});
我聽說過類似的概念,那就是流量控制,它們是同一件事嗎? –
@CLSo不是真的,沒有。但是,您可以考慮流量控制方面的承諾。 – vittore
@CLSo忘記給你鏈接文檔http://api.jquery.com/category/deferred-object/ - jquery推遲/承諾。和https://www.promisejs.org/ – vittore