如何检查是否所有的ajax函数都完成加载在页面中

how to check if all ajax functions are done loading in the page?

本文关键字:函数 加载 ajax 何检查 检查 是否      更新时间:2023-09-26

在我的页面中,我使用SharePoint 2010客户端对象模型来调用异步函数(ajax调用)。在页面加载时,我调用了很多ajax来加载数据。但我想知道,如果有一种方法,使一个函数可以调用一旦所有的ajax调用完成。有什么办法可以做到吗?由于

如果您使用jQuery发出AJAX调用,请注册一个ajaxStop处理程序:

$(document).ajaxStop(function() {
    // this will be called when all running AJAX calls have completed
});

一个jquery解决方案,使用$.active查看有多少活动请求

所以…

var ajaxCheckInterval = setInterval(checkAjaxState, 10);
function checkAjaxState(){
    if($.active == 0){
        clearInterval(ajaxCheckInterval);
        // do work
    }
}

<年代>可能是这样的:

var ajaxCheckInterval = setInterval(checkAjaxState, 10);
function checkAjaxState(){
    if(document.readyState == 'complete'){
        clearInterval(ajaxCheckInterval);
        // do work
    }
}