温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

jQuery.when()怎么使用

发布时间:2022-03-05 10:44:58 来源:亿速云 阅读:106 作者:iii 栏目:web开发

本篇内容主要讲解“jQuery.when()怎么使用”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“jQuery.when()怎么使用”吧!

  在案例中有多个延迟对象传递给jQuery.when ,该方法返回一个新的“宿主”延迟对象,跟踪所有已通过Deferreds聚集状态。 当所有的延迟对象被受理(resolve)时,该方法才会受理它的 master 延迟对象。当其中有一个延迟对象被拒绝(rejected)时,该方法就会拒绝它的 master 延迟对象。如果 master 延迟对象被受理(resolved),那么会传入所有延迟对象的受理(resolved)值,这些延迟对象指的就是传给 jQuery.when 的参数。例如,当延迟对象是 jQuery.ajax() 请求,那么传入的受理(resolved)参数就是请求用的 jqXHR 对象,传入顺序就是它们在参数列表中的顺序。

  在多延迟情况下,如果延迟一被拒绝,jQuery.when触发立即调用 master 延迟对象的 failCallbacks。请注意,在上述情况中,有一些延迟对象依然是不能被受理(unresolved)的。那么,在这种情况下,如果需要执行一些额外的处理,例如,取消所有未完成的 ajax 请求,你可以在闭包中进行保持 jqXHR 对象的引用,并且在 failCallback 中检查或取消它们。

  例子:

  Example: 执行Ajax请求后两个函数是成功的。(见jQuery.ajax()对于一个成功的和错误的案件为AJAX请求的完整描述文档)。

  $.when($.ajax("/page1.php"), $.ajax("/page2.php")).done(function(a1,  a2){

  /* a1 and a2 are arguments resolved for the

  page1 and page2 ajax requests, respectively */

  var jqXHR = a1[2]; /* arguments are [ "success", statusText, jqXHR ] */

  if ( /Whip It/.test(jqXHR.responseText) ) {

  alert("First page has 'Whip It' somewhere.");

  }

  });

  Example: 执行函数myFunc当两个Ajax请求是成功的,如果任一或myFailure有一个错误。

  $.when($.ajax("/page1.php"), $.ajax("/page2.php"))

  .then(myFunc, myFailure);

到此,相信大家对“jQuery.when()怎么使用”有了更深的了解,不妨来实际操作一番吧!这里是亿速云网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI