我需要一个脚本来按顺序触发 ajax 请求。我正在我们的系统中建立用户资料。每个 ajax 函数都构建了配置文件的一部分。完成配置文件的每个部分后,客户端将收到响应,从而导致脚本继续执行下一部分。我的目标是展示每个部分的构建进度。就像是:
构建用户.......完成。
建立电子邮件......
等等。
我的问题是 ajax 一次全部触发,虽然预期不是按需要的顺序。asych:false
由于已知的警告,我不想使用。我已经阅读了关于将下一个 ajax 调用放在前一个成功中的信息。我试图避免这种情况,因为我将不得不打大约 15-20 个电话。那一页读起来会很难看。我正在尝试数组方法,因为它看起来最干净。
$(function(){
//array of functions
var myArray = {'buildUser':'Building User','buildEmail':'Building Email'};
$('#result').html("");
//loop through array
$.each(myArray, function(key, value) {
//build "working" line
$('#result').append("<div id="+key+">"+value+".....</div>");
//send request to script
$.ajax({
type: "POST",
url: "modules/userAdd/"+key+".php",
data: "data="+data,
success: function(result) {
//replace "working" with "done"
$('#'+key).html(value+".....Done");
}
})
});
});