使用带有AJAX请求的setTimeout时出错

时间:2013-08-01 18:59:02

标签: javascript jquery settimeout

我有以下成功方法。在我使用setTime之前,它没有问题,但它发送了很多AJAX请求。为了减慢速度,我使用了setTimeout。因为我把它放在我得到了一堆这些错误:“Uncaught SyntaxError:Unexpected identifier”。

success: function (data) {
    if (data === '') {
        setTimeout( $.ajax(this) ,3000);
        console.log("AJAX resent");

    }
    else {
        //console.log("|", data, "|");
        test.html('');
        test.append(data);
    }
},

1 个答案:

答案 0 :(得分:2)

必须引用该函数,而不是求值,因此如果需要传递参数,则必须将其包装在匿名函数中:

var that = this;
setTimeout(function() {
    $.ajax(that);
} ,3000);