Javascript 如何根据返回重复ajax请求

Javascript 如何根据返回重复ajax请求,javascript,jquery,countdown,jquery-countdown,Javascript,Jquery,Countdown,Jquery Countdown,我有以下代码: .on('finish.countdown', function() { var onEndAuction = function () { $.ajax({ type: "POST", url: "{{path('app_auction_end')}}",

我有以下代码:

.on('finish.countdown', function() {
                    var onEndAuction = function () {
                        $.ajax({
                            type: "POST",
                            url: "{{path('app_auction_end')}}",
                            data: {auctionId:{{ aReturn.oAuction.getId()}}},
                            success: function (data) {
                                console.log(data);
                                if (data == 0) {
                                    setTimeout(onEndAuction, i_timer);
                                } else {
                                    document.location.reload(true);
                                }
                            }
                        });
                    };
                });

如果data==0,我想在10秒后再次调用
app\u auction\u end
。你能帮我吗?请提前发送Thx并为我的英语致歉

为操作指定一个命名函数:

var someFunction = function () {
    $.ajax({
        //...
    });
};
if (data == 0) {
    setTimeout(someFunction, i_timer);
}
然后将其用于调用
.on()

.on('finish.countdown', someFunction)
success
处理程序中,设置该函数的超时:

var someFunction = function () {
    $.ajax({
        //...
    });
};
if (data == 0) {
    setTimeout(someFunction, i_timer);
}

你快到了,只需调用onEndAuction,执行
varEndAuction=
什么都不做。。所以在你的函数后面有->
};ONENDAUTION()
@Keith抱歉我不理解这个想法:(好的,我会回答你的问题。@HareaCosticla:因为你在另一个函数的作用域中定义了这个函数,你一开始并不是在调用这个函数。或者在window作用域中定义它,并将它用作
.on()的回调)
如本答案所示,或在定义时调用
onendaution
函数。(从长远来看,前者似乎更容易理解。)