我在一个页面中有3个$ .ajax请求,这些请求从服务器获取JSON内容并填充三个单独的div。这三个div中的内容非常大,因此加载所有内容需要一段时间。这些ajax调用也会在页面加载时调用,所以类似于:
$(document).ready(function () {
$.ajax({
type: 'POST',
url: "/controller/action",
dataType: 'json',
traditional: true,
async: false,
success: function (data) {
//fill content in div 1
}
});
$.ajax({
type: 'POST',
url: "/controller/action2",
dataType: 'json',
traditional: true,
async: false,
success: function (data) {
//fill content in div 2
}
});
$.ajax({
type: 'POST',
url: "/controller/action3",
dataType: 'json',
traditional: true,
async: false,
success: function (data) {
//fill content in div 3
}
});
});
我的大问题是:
非常感谢! 发条
答案 0 :(得分:8)
答案 1 :(得分:2)
页面将首先加载,您的功能将在准备好后执行。
要使GUI responding 和同时执行ajax请求,请删除async:false
选项。
答案 2 :(得分:-1)
您可以将此代码移至$(document).load(....)。
3个电话将同时开始。他们的完成时间无法保证。