返回值:Deferreddeferred.fail(failCallbacks, [failCallbacks])

添加延迟对象被拒绝(fail)时执行的处理程序。

deferred.fail() 方法可以接受一个或多个参数,每个参数既可以是单个函数,也可以是一个函数数组。当延迟对象被拒绝(fail)时,就会被调用。回调函数的执行顺序和它们被添加的顺序是一样的。由于 deferred.fail() 返回的是延迟对象,所以可以链接其它的延迟对象,包括额外的 deferred.fail() 方法。当延迟对象被拒绝(fail)时,failCallbacks 就会被调用,并且可以使用传递给 deferred.reject() deferred.rejectWith() 方法的参数,按照它们被添加的顺序。了解更多内容,请参见如下文档 延迟对象.

示例:

由于 jQuery.get 方法返回 jqXHR 对象,该对象继承自延迟对象,所以我们可以使用 deferred.done() 和 deferred.fail() 方法,添加一个成功和失败时调用的回调函数。

jQuery 代码:

$.get("test.php")
  .done(function(){ alert("$.get succeeded"); })
  .fail(function(){ alert("$.get failed!"); });