Javascript等待Ajax内容加载

Javascript等待Ajax内容加载,javascript,dom,google-chrome-extension,Javascript,Dom,Google Chrome Extension,我是javascript新手,正在编写遍历DOM的代码。页面使用复选框筛选结果。使用Ajax显示结果。有4个级别的复选框 祖父母 父母亲 儿童 孙子 对于每个级别,我希望javascript单击复选框并等待加载内容 现在它检查并遍历整个DOM,但不等待 我想要的是,当元素被单击时,下一个函数decideread()应该仅在Ajax结果被刷新时调用 我尝试过使用setTimeOut和其他延迟方法,但他们说它是单线程的,所以不起作用。有什么想法吗 对于(i=0;i

我是javascript新手,正在编写遍历DOM的代码。页面使用复选框筛选结果。使用Ajax显示结果。有4个级别的复选框

祖父母 父母亲 儿童
孙子

对于每个级别,我希望javascript单击复选框并等待加载内容

现在它检查并遍历整个DOM,但不等待

我想要的是,当元素被单击时,下一个函数decideread()应该仅在Ajax结果被刷新时调用

我尝试过使用setTimeOut和其他延迟方法,但他们说它是单线程的,所以不起作用。有什么想法吗

对于(i=0;i
for(j=1;j=5000){
打破
}
}
saveData();
作业节点[l]。单击();
}
inTypeNode[k]。单击();
}
stateNode[j]。单击();
}
mgtNode[i]。单击();

}

您应该为此使用onreadystatechange。选中此项

我不控制页面的主代码。我正在删除内容,所以我所能做的就是编写javascript。Ajax调用不在我的控制范围内
for (j = 1; j < stateNode.length; j++)

{
    stateNode[j].click();
    var read = decideRead();
    if (read)

    {
        alert('we have read the data, now skip further reading below');
        stateNode[j].click(); // we have read the data, now skip further reading below.
        continue;

    }


    for (k = 0; k < inTypeNode.length; k++) {

        inTypeNode[k].click();

        var read = decideRead();

        if (read)

        {

            alert('we have read the data, now skip further reading below');

            inTypeNode[k].click();
            continue;

        }




        for (l = 0; l < jobNode.length; l++)

        {
            jobNode[l].click();

            while (true) {
                if (new Date() - startTime >= 5000) {
                    break;
                }
            }


            saveData();

            jobNode[l].click();
        }

        inTypeNode[k].click();


    }
    stateNode[j].click();

}
mgtNode[i].click();