Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ajax/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
为什么我的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 - Fatal编程技术网

为什么我的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查询只保存最后一个值 函数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,

如果我运行这段代码,例如我的循环运行了3次,我会得到3个数据库条目,但这三个条目都是在for循环中运行的最后一个值。如何暂停循环直到第一个查询返回,然后运行第二个查询,依此类推直到我的循环结束?

将处理
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);