doujiao0110 2015-09-03 10:42
浏览 159

Jquery ajax在循环中调用,等待每个调用完成

I have this ajax function, that returns an array of prices:

function get_date_price(checkdate, type_r) {
    return $.ajax({
             type: "POST",
             url: "hotels/get_check_date_price", 
             data: {id: $("#hotel_id").val(), checkdate1: checkdate, type_r1: type_r},
             dataType: "JSON",  
             cache:false,
             success:
             function(data){
             }
    });
}

Then I want to call this function in a loop and calculate the total price, I use $.when to wait for every ajax call to be completed, so that the returned price is correct (else it returns 0)

var total = 0;
for(var i = 0; i < $("#nights").val(); i++){
    $.when(get_date_price("02/09/2016","Chambre Single")).then(function (v) {
        total += parseFloat(v[1][0].price);
        console.log(total);    
    });
}

When the loop contains, for example, 5 iterations, all works perfectly, when the number of iteration increases, some requests return 403! :

enter image description here

PS: I have remarqued that in a private navigation, the code is working without errors!

  • 写回答

0条回答 默认 最新

    报告相同问题?

    悬赏问题

    • ¥15 有了解d3和topogram.js库的吗?有偿请教
    • ¥100 任意维数的K均值聚类
    • ¥15 stamps做sbas-insar,时序沉降图怎么画
    • ¥15 unity第一人称射击小游戏,有demo,在原脚本的基础上进行修改以达到要求
    • ¥15 买了个传感器,根据商家发的代码和步骤使用但是代码报错了不会改,有没有人可以看看
    • ¥15 关于#Java#的问题,如何解决?
    • ¥15 加热介质是液体,换热器壳侧导热系数和总的导热系数怎么算
    • ¥100 嵌入式系统基于PIC16F882和热敏电阻的数字温度计
    • ¥15 cmd cl 0x000007b
    • ¥20 BAPI_PR_CHANGE how to add account assignment information for service line