下面是一个使用Ajax、jQuery.when()和each()循环的示例代码:
// 创建一个包含Ajax请求的数组
var requests = [
$.ajax({ url: "page1.html", dataType: "html" }),
$.ajax({ url: "page2.html", dataType: "html" }),
$.ajax({ url: "page3.html", dataType: "html" })
];
// 使用jQuery.when()等待所有请求完成
$.when.apply($, requests).done(function() {
// 获取所有请求的响应数据
var responses = Array.prototype.slice.call(arguments);
// 使用each()循环遍历响应数据
$.each(responses, function(index, response) {
// 在页面上显示每个响应数据
$("#result").append("" + response[0] + "");
});
}).fail(function() {
// 处理请求失败的情况
console.error("请求失败");
});
上述代码首先创建了一个包含3个Ajax请求的数组,然后使用$.when.apply($, requests)
等待所有请求完成。在请求完成后,响应数据将作为参数传递给done()
方法的回调函数。回调函数使用$.each()
循环遍历响应数据,并在页面上显示每个响应数据。
如果有任何一个请求失败,将会调用fail()
方法的回调函数进行处理。
请注意,上述代码假设页面中有一个具有id为"result"的元素,用于显示请求的响应数据。您可以根据需要调整代码以适应您的实际情况。