如何在setTimeout之后运行ajax调用

时间:2011-12-31 09:07:24

标签: javascript jquery ajax

我是jquery的新手,甚至在看了一些例子后我也没想到。我没有使用超时:对于ajax选项,因为服务器响应很好,我只需要一个实际的1000毫秒延迟来给Ruby的Resque / Redis一定的时间来将作业移动到队列中。我只想在1000秒后运行主函数()(底部的setTimeout用于过程的后半部分,这已经很好用了)

$(function() {
    $.ajax({
        type: "POST",
        url:  "/percentcomplete",
        dataType: "json",
        success: function(data) {
            if (data != null) {
                $("#status").fadeIn();
                if (data.name === "PostSaver") {
                    $(".refreshing").fadeIn();
                } else {
                    $(".rebuilding").fadeIn();
                }
                setTimeout(refreshStatus, 1000);
            }
        }
    });
});

1 个答案:

答案 0 :(得分:4)

试试这个:

$(function() {
    function ajaxFunc() {
        $.ajax({
            type: "POST",
            ...
        });
    }
    setTimeout(ajaxFunc, 1000);
});