【发布时间】:2019-04-15 22:40:09
【问题描述】:
我有一个array 的语句,我想遍历每个语句并通过ajax 调用提交给server。我必须确保在发送下一个请求之前执行每个ajax 请求,因为在server 侧代码上,我正在为此array 语句创建一个unique key。发生的事情是在我提交第一个请求之前,第二个请求进来,我最终创建了 2 个单独的密钥,因为它将每个密钥都视为第一次请求。我不能完全依赖超时,我到目前为止的代码继续循环。
function formPostSubmission(form){
var parts = ['a', 'b', 'c'];
var i = 0;
parts.forEach(function(entry) {
i++;
datafield ={
answer:entry,
displayOrder:i,
ajaxName:'statementPartialSubmit'
};
$.when(submitAjaxData(form, datafield)).then(function succesHandler(data){
console.log("promise test "+data);
console.log("Below request ");
},
function errorHandler(){
console.log("Error occurred ");
})
console.log("Go for next ");
});
}
function submitAjaxData(form, datafield) {
console.log(" called submitAjaxData ");
var loadurl = domainName + "/ajax-call-handler";
return $.ajax({
url: loadurl,
method: "GET",
data: datafield
});
}
我希望检查响应数据是否成功,然后在循环中继续。但这就是我的console 的打印方式。
called submitAjaxData
Go for next
called submitAjaxData
Go for next
promise test
Below request
promise test
Below request
【问题讨论】:
标签: javascript jquery ajax loops