问题:
- 我们应该按照下面的建议更改我们的编码吗?
.done()
&success:
,.fail()
&error:
和.always()
&之间有区别complete:
吗?
序言:
我正在整理一个 jQuery.ajax 调用,我过去也成功地完成了该调用。像这样的东西:
$.ajax(
{
url: someUrl,
type: 'POST',
data: someData,
datatype: 'json',
success: function (data) { someSuccessFunction(data); },
error: function (jqXHR, textStatus, errorThrown) { someErrorFunction(); }
});
在快速浏览一些文档时,我遇到了一个参考,指出从 jQuery 1.8 开始不推荐使用成功、错误和完成回调。要为最终删除准备代码,请改用 jqXHR.done()、jqXHR.fail() 和 jqXHR.always()。
因此,我们应该开始编写这样的代码:
$.ajax( "example.php" )
.done(function (data) { someSuccessFunction(data); })
.fail(function (jqXHR, textStatus, errorThrown) { someErrorFunction(); })
.always(function() { alert("complete"); });