试图延迟jQuery帖子

时间:2010-12-01 12:22:52

标签: jquery post loops delay

我在循环中有这个帖子代码(虽然我< 10)并且我试图延迟每个帖子5秒但是正在做的是延迟5秒并且一次发送所有10个帖子

有没有办法在循环中的jQuery或Ajax中间隔或延迟每个帖子?

    $(document).ready(function() {
                setTimeout(function(){
            $.post("Trigger.aspx", { phone: phoneval,
            sms: smsval }, function(data) {
                $('.result').html(data);
            });
            },5000);
            return false;
    });

2 个答案:

答案 0 :(得分:1)

据我记得jquery的ajax调用有一个beforeSend函数可能解决你的问题

答案 1 :(得分:1)

只需使用增加的延迟:

$(document).ready(function() {
    for(var i = 0; i < 10; i++) {
        setTimeout(function(){
            $.post("Trigger.aspx", {
                phone: phoneval,
                sms: smsval
            }, function(data) {
                $('.result').html(data);
            });
        }, 5000 * i);
    }
});

如果第一个POST应延迟5秒,请使用5000 * (i + 1)或将您的循环更改为for(var i = 1; i <= 10; i++)