为什么我的ajax查询只保存最后一个值 函数saveangebotdetailfunc(url、GewerkFertig1、AngebotnrFertig1、PreisFertig1、, WerkvertragID1,DatumFertig1){ $.ajax({ 键入:“POST”, url:url, 数据:{ csrfmiddlewaretoken:“{{csrf_令牌}}”, GewerkAngebotF:GewerkFertig1, AngeBotnrf:AngebotnrFertig1, AngebotspreisF:PreisFertig1, WerkvertragidF:WerkvertragID1, AngebotsdatumF:DatumFertig1, }, 数据类型:“文本”, 成功:功能(数据){ }, 错误:函数(){ }, }) } for(var=0;is
如果我运行这段代码,例如我的循环运行了3次,我会得到3个数据库条目,但这三个条目都是在for循环中运行的最后一个值。如何暂停循环直到第一个查询返回,然后运行第二个查询,依此类推直到我的循环结束?将处理为什么我的ajax查询只保存最后一个值 函数saveangebotdetailfunc(url、GewerkFertig1、AngebotnrFertig1、PreisFertig1、, WerkvertragID1,DatumFertig1){ $.ajax({ 键入:“POST”, url:url, 数据:{ csrfmiddlewaretoken:“{{csrf_令牌}}”, GewerkAngebotF:GewerkFertig1, AngeBotnrf:AngebotnrFertig1, AngebotspreisF:PreisFertig1, WerkvertragidF:WerkvertragID1, AngebotsdatumF:DatumFertig1, }, 数据类型:“文本”, 成功:功能(数据){ }, 错误:函数(){ }, }) } for(var=0;is,ajax,for-loop,Ajax,For Loop,如果我运行这段代码,例如我的循环运行了3次,我会得到3个数据库条目,但这三个条目都是在for循环中运行的最后一个值。如何暂停循环直到第一个查询返回,然后运行第二个查询,依此类推直到我的循环结束?将处理AngebotArrayFertig单个元素的代码放入自己的函数中,将is作为参数,然后您必须修改saveangebotdetailfunc以接受下一个is值,并在成功保存后调用新函数。见下文: function saveangebotdetailfunc(url, GewerkFertig1,
AngebotArrayFertig
单个元素的代码放入自己的函数中,将is
作为参数,然后您必须修改saveangebotdetailfunc
以接受下一个is
值,并在成功保存后调用新函数。见下文:
function saveangebotdetailfunc(url, GewerkFertig1, AngebotnrFertig1, PreisFertig1,
WerkvertragID1, DatumFertig1){
$.ajax({
type: 'POST',
url: url,
data: {
csrfmiddlewaretoken: '{{ csrf_token }}',
GewerkAngebotF: GewerkFertig1,
AngebotsnrF: AngebotnrFertig1,
AngebotspreisF: PreisFertig1,
WerkvertragidF: WerkvertragID1,
AngebotsdatumF: DatumFertig1,
},
dataType: "text",
success: function (data) {
},
error: function () {
},
})
}
for (var is = 0; is < AngebotArrayFertig.length; is++) {
GewerkFertig = AngebotArrayFertig[is][0]
AngebotnrFertig = AngebotArrayFertig[is][1]
PreisFertig = AngebotArrayFertig[is][3]
DatumFertig = AngebotArrayFertig[is][2]
var DatumFertig = DatumFertig.split(".").reverse().join("-"); //Wandelt Datum in PythonForm um das Backend es verarbeiten kann
saveangebotdetailfunc("/saveangebotdetail/", GewerkFertig, AngebotnrFertig, PreisFertig, WerkvertragID, DatumFertig)
if (is == AngebotArrayFertig.length){
AngeboteSaveAbgeschlossen = 1
}
}
函数saveangebotdetailfunc(url、GewerkFertig1、AngebotnrFertig1、PreisFertig1、,
WerkvertragID1,DatumFertig1,is){
$.ajax({
键入:“POST”,
url:url,
数据:{
csrfmiddlewaretoken:“{{csrf_令牌}}”,
GewerkAngebotF:GewerkFertig1,
AngeBotnrf:AngebotnrFertig1,
AngebotspreisF:PreisFertig1,
WerkvertragidF:WerkvertragID1,
AngebotsdatumF:DatumFertig1,
},
数据类型:“文本”,
成功:功能(数据){
FORANGEBOTTARYFERTIG(is);
},
错误:函数(){
},
})
}
AngeBotArrayFertig(is)的功能{
如果(是function saveangebotdetailfunc(url, GewerkFertig1, AngebotnrFertig1, PreisFertig1,
WerkvertragID1, DatumFertig1, is){
$.ajax({
type: 'POST',
url: url,
data: {
csrfmiddlewaretoken: '{{ csrf_token }}',
GewerkAngebotF: GewerkFertig1,
AngebotsnrF: AngebotnrFertig1,
AngebotspreisF: PreisFertig1,
WerkvertragidF: WerkvertragID1,
AngebotsdatumF: DatumFertig1,
},
dataType: "text",
success: function (data) {
forAngebotArrayFertig(is);
},
error: function () {
},
})
}
function forAngebotArrayFertig(is) {
if (is < AngebotArrayFertig.length) {
GewerkFertig = AngebotArrayFertig[is][0]
AngebotnrFertig = AngebotArrayFertig[is][1]
PreisFertig = AngebotArrayFertig[is][3]
DatumFertig = AngebotArrayFertig[is][2]
var DatumFertig = DatumFertig.split(".").reverse().join("-"); //Wandelt Datum in PythonForm um das Backend es verarbeiten kann
saveangebotdetailfunc("/saveangebotdetail/", GewerkFertig, AngebotnrFertig, PreisFertig, WerkvertragID, DatumFertig, (is + 1))
if (is == AngebotArrayFertig.length){
AngeboteSaveAbgeschlossen = 1
}
}
}
forAngebotArrayFertig(0);