1

我有很多 jquery ajax 请求,用一个函数发送。

function sendData(data){
    $.post("somepage", {"data": data}, function() {}, "json")
    .fail(function(jqXHR, textStatus, errorThrown){
        sendData(***previuoslySentData***);
    });
}
sendData(1);
sendData(2);
sendData(3);
...

如您所见,当请求失败时,我希望能够使用先前发送的数据再次发送请求。
如何取回有关 xhr 错误的已发送数据?
我认为它应该在 xhr 中,但我找不到任何东西。
我也对这个问题的任何其他解决方案感兴趣。

4

1 回答 1

2

您将 AJAX 请求包装在自己的函数中的方式,实际上是在创建一个新的闭包,这意味着data您接受作为输入参数的变量仍然可以在您的.fail回调中使用。

于 2012-09-24T09:42:17.450 回答