弹指一挥间

好好做事,学习待人 (大数据分析/.NET/JAVA)技术交流QQ:860280456; .NET/JAVA技术交流群:192028174

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理
当两个Ajax请求是成功的则执行函数myFunc,如果任一个有错误则执行myFailure

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

.then(myFunc, myFailure);

 

 

jQuery.when(deferreds)

参数deferreds,一个或多个延时对象或JS对象,我们初略的认为它就是一个或多个异步请求。

例如:

[javascript] view plaincopyprint?
  1. $.when($.ajax("page1.php"), $.ajax("page2.php"))  

when()函数常常和done()函数、fail()函数、then()函数联合使用:
done(Function func) - 当deferreds中的处理都完成的时候执行Function回调函数
fail(Function func) - 当deferreds中有一个处理失败的时候执行Function回调函数
then(Function func1,Function func2)- 结合了done和fail函数,当都成功执行func1,当有一个失败执行func2

Example:

  1. var whenResult = $.when($.ajax("page1.php"), $.ajax("page2.php"));  
  2. whenResult.done(function(a1,a2){  
  3. //函数内容略  
  4. //a1和a2俩参数是when函数中两个ajax请求的相关jqXHR对象  
  5. });  
  6. whenResult.fail(function(){  
  7. //函数内容略  
  8. })  
  9. whenResult.then(successFunc,failureFunc);  

posted on 2015-04-28 19:17  v.e.n.u.s  阅读(650)  评论(0编辑  收藏  举报