Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/89.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何在(…)失败时强制jquery$_Javascript_Jquery_Ajax_Deferred - Fatal编程技术网

Javascript 如何在(…)失败时强制jquery$

Javascript 如何在(…)失败时强制jquery$,javascript,jquery,ajax,deferred,Javascript,Jquery,Ajax,Deferred,a1是否有一个值会强制延迟对象失败,同时不会在对象内执行任何格式错误的ajax调用?您可以传递一个: 您可以在中进行测试。详细说明@Frédéric Hamidi,如果您有一个尚未“promisized”的“async”函数,那么它通常会有一个成功和失败的回调 然后你做一些类似的事情: $.when($.Deferred().reject()).fail(function() { alert("fail"); }); 再说一次,如果你愿意,你可以在这两种情况下都失败,尽管这对我来说似乎

a1是否有一个值会强制延迟对象失败,同时不会在对象内执行任何格式错误的ajax调用?

您可以传递一个:


您可以在中进行测试。

详细说明@Frédéric Hamidi,如果您有一个尚未“promisized”的“async”函数,那么它通常会有一个成功和失败的回调

然后你做一些类似的事情:

$.when($.Deferred().reject()).fail(function() {
    alert("fail");
});
再说一次,如果你愿意,你可以在这两种情况下都失败,尽管这对我来说似乎没有什么意义


但是,如果它已经是一个承诺(对于jQuery来说,像Ajak这样的承诺就足够了),那么您可以重用这个承诺。

谢谢,您可以通过在ajax函数失败时给出一个ajax函数传入$的示例来增强您的答案。(如何调用不同对象并提醒用户)@Dave,恐怕我不理解你的评论。如果调用
$.ajax()
返回的承诺被传递给
$。当()
请求失败时,将以与此处相同的方式调用
失败处理程序。
$.when($.Deferred().reject()).fail(function() {
    alert("fail");
});
// @returns {promise} a promise
function callAsync(args){
  var deferred = $.Deferred();

  ApiNotReturningPromise.ajax(args, function success(data) {
    deferred.resolve(data);
    // if you wish to always fail: o.O
    // deferred.reject(data);
  }, function fail(error) {
    deferred.reject(error);
  });

  return deferred.promise();
}