看看这个:
方法(jqXHR 和 Deferred 实现的一部分,此处显示仅为清晰起见)
.ajax().always(function(a, textStatus, b){});
替换 jQuery 1.8 中已弃用的方法 .complete()。为响应成功的交易,参数与 .done() 相同(即 a = data,b = jqXHR),对于失败的交易,参数与 .fail() 相同(即 a = jqXHR,b = errorThrown)。这是上述完整回调函数的另一种构造。有关实现细节,请参阅 deferred.always()。
.ajax().done(function(data, textStatus, jqXHR){});
替换 jQuery 1.8 中已弃用的方法 .success()。这是上述成功回调函数的另一种构造。有关实现细节,请参阅 deferred.done()。
.ajax().fail(function(jqXHR, textStatus, errorThrown){});
替换 jQuery 1.8 中已弃用的方法 .error()。这是上述完整回调函数的另一种构造。有关实现细节,请参阅 deferred.fail()。
.ajax().then(function(data, textStatus, jqXHR){}, function(jqXHR, textStatus, errorThrown){});
结合了 .done() 和 .fail() 方法的功能。有关实现细节,请参阅 deferred.then()。
.ajax().pipe(function(data, textStatus, jqXHR){}, function(jqXHR, textStatus, errorThrown){});
结合了 .done() 和 .fail() 方法的功能,允许操作底层的 Promise。有关实现细节,请参阅 deferred.pipe()。