JQuery when() done() then()
2024-08-30 02:56:28
jQuery.when(deferreds)
参数deferreds,一个或多个延时对象或JS对象,我们初略的认为它就是一个或多个异步请求。
例如:$.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
- var whenResult = $.when($.ajax("page1.php"), $.ajax("page2.php"));
- whenResult.done(function(a1,a2){
- //函数内容略
- //a1和a2俩参数是when函数中两个ajax请求的相关jqXHR对象
- });
- whenResult.fail(function(){
- //函数内容略
- })
- whenResult.then(successFunc,failureFunc);
如果没有参数传递给 jQuery.when()
,它会返回一个resolved状态的Promise。
如果向 jQuery.when()
传入一个单独的延迟对象,那么会返回它的 Promise 对象(延迟方法的一个子集)。可以继续绑定 Promise 对象的其它方法,例如, defered.then
。当延迟对象已经被解决(resolved)或被拒绝(rejected)(通常是由创建延迟对象的最初代码执行的),那么就会调用适当的回调函数。例如,由 jQuery.ajax()
返回的 jqXHR 对象是一并立的延迟对象并且可以像下面这样使用:
]; /* 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);
最新文章
- HTML 内容居中方式总结
- JVM Tomcat性能实战
- rem是如何实现自适应布局的?
- [知识点]网络流之Edmond-Karp算法
- C++中的常量折叠
- C++控制程序只运行一个实例
- JS-007-富文本域操作
- 工作流学习——Activiti流程定义管理三步曲 (zhuan)
- Intent 传值和 Bundle传值的区别
- LabVIEW设计模式系列——移位寄存器
- python标准库]Hashlib
- (六) Keras 模型保存和RNN简单应用
- PBRT笔记(13)——光线传播1:表面反射
- DevExpress GridControl复合表头(多行表头)设置
- 【Jenkins】testng+testNgXslt+ant优化测试报告
- 自学Zabbix7.1 IT services
- java的list遍历
- yum list失败
- PHP excel reader , excel时间转成php时间格式
- C# 获取每一个像素点的RGB