我有三个 AJAX 请求相继触发,并且我希望能够同时回显所有数据。
$.ajax ({
type: "POST",
url: "page1.php",
data: "var1=" + var1,
success: function(msg) {
$("#results2").load("page2.php",
function (responseText, textStatus, XMLHttpRequest) {
$("#results3").load("page3.php",
function (responseText, textStatus, XMLHttpRequest) {
if (textStatus == "success") {
$("#results1").html(msg);
}
});
});
}
});
#results1
, #results2
and #results3
所有这些都需要同时加载它们的相关数据。上面的代码没有做到这一点。
您可以使用延迟对象 http://api.jquery.com/category/deferred-object/1.5版本中添加的jQuery:
$.when( $.ajax({1}) , $.ajax({2}) , $.ajax({3}) )
.then(function() {
alert("tada");
});
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)