我正在使用 jQuery 1.11,但是如果我想在需要彼此等待的地方执行多个 Ajax 请求,那么唯一的解决方案是像这样嵌套它们:
// Ajax #1 -------------------------------
$.ajax({
dataType: "json",
url: "index.json",
data: { urlVar1:val1,urlVar2:val2},
success: function(data1) {
// stuff for Ajax #1 ...
// Ajax #2 ---------------------------
$.ajax({
dataType: "json",
url: "index.json",
data: { urlVarA:data1-val1,urlVarB:data1-val2},
success: function(data2) {
// stuff for Ajax #2 ...
// Ajax #3 -----------------------
$.ajax({
dataType: "json",
url: "index.json",
data: { urlVarX:data2-val1,urlVarY:data2-val2},
success: function(data3) {
// stuff for Ajax #3 ...
} // $.ajax.success #3
}); // $.ajax #3 -----------------
} // $.ajax.success #2
}); // $.ajax #2 ---------------------
} // $.ajax.success #1
}); // $.ajax #1 -------------------------
在现实生活中,我需要Ajax #1
获取多个组......Ajax #2
应该处理这些组并获取子组,并且Ajax #3
应该从这些子组中获取单独的行。
从理论上讲,我可能一次调用就可以完成这 3 个 Ajax 调用,但这只是为了理解如何做到这一点,因为我认为嵌套方法很快就会在我的代码中变得过于混乱。