jQuery / zepto ajax 全局默认设置
来源:互联网 发布:淘宝卖家开通子账号 编辑:程序博客网 时间:2024/06/04 00:41
jQuery / zepto 的 $.ajax 方法需要配置很多选项, 有些是很常用的每个 ajax 请求都要用到的, 可以全局设置, 避免每次都写.
注意: 此处用的 jQuery 版本是 1.8.3, zepto 版本是 1.1.6 和 1.2.0. 使用别的版本的要自己测试下.
#jQuery 的方法是 jQuery.ajaxSetup()
$.ajaxSetup({ url: "/xmlhttp/", global: false, type: "POST"});
如果想设置 complete error 等回调, 可以用 .ajaxComplete() .ajaxError() 等.
$.ajaxError(function( event, request, settings ) { // ... console.log('global error handler');});// jquery 1.9 以后, 全局 ajax 事件必须加在 document 上面$(document).ajaxError(function( event, jqxhr, setting, thrownError ) { // ... console.log('global error handler');});
如果业务逻辑处写了 error 的回调, 则 jQuery 会先调用业务逻辑处的 error 回调, 再调用全局设置的 error 回调.
$.ajax({ data: {key: value}, success: function(data) { // success code }, error: function(msg) { console.log('local error handler'); }});// 最终的结果, 先打印 local error handler, 再打印 global error handler// 这一点与 zepto 不同, 见下文
#zepto 的设置方法是修改属性 $.ajaxSettings = {…}
由于 ajaxSettings 是一个属性, 值为一个对象, 直接写 $.ajaxSettings = {…} 会覆盖掉所有默认的选项, 所以可以这么写, 只修改需要的部分
$.ajaxSettings = $.extend($.ajaxSettings, { error: ajaxFail});
有一点要注意的是, ajax 的回调函数只能有一个, 如果你在业务逻辑里 $.ajax({}) 里面写了 error 的回调函数, 则会 覆盖掉 全局设置的 error 回调函数
$.ajax({ data: {key: value}, success: function(data) { // success code }, error: function(msg) { // 这里的 error 回调会覆盖掉全局设置的 error 回调 // 也就是全局的 'global error handler' 是不会打印的 console.log('local error handler'); }});
如果想要在业务逻辑的 error 回调后面再调用全局的 error 回调的话, 需要手动调用全局的回调:
$.ajax({ data: {key: value}, success: function(data) { // success code }, error: function(msg) { // 这里的 error 回调会覆盖掉全局设置的 error 回调 // 也就是全局的 'global error handler' 是不会打印的 console.log('local error handler'); // 想要再调用全局的 error 回调, 需要手动调用 $.ajaxSettings.error(msg); }});
阅读全文
0 0
- jQuery / zepto ajax 全局默认设置
- jquery ajax全局事件
- jquery ajax全局事件
- jQuery全局ajax Error
- jQuery ajax 全局 设置 同步
- jQuery ajax 全局事件设置
- jquery Ajax 全局调用封装
- jquery Ajax 全局调用封装
- jQuery 中的 Ajax 全局事件
- jquery Ajax 全局调用封装
- jQuery ajax设置全局配置
- jquery的ajax全局配置
- zepto之ajax
- jquery的ajax全局事件详解
- jquery的ajax全局事件详解
- 6.7: jQuery中的Ajax全局事件
- jquery的ajax全局事件详解
- jquery的ajax全局事件详解
- 解密HLS中的AES加密
- mysql 批量插入
- JAVA使用随机数进行概率抽奖
- Loadrunner性能指标分析
- caffe第一步,配置VS2015环境。
- jQuery / zepto ajax 全局默认设置
- LoRa联盟:LoRaWAN安全性若干问答(上)
- common_price
- qb neighbor
- 2. DataStructure Cp2 Doubly-Linked Node
- LoRa联盟:LoRaWAN安全性若干问答(下)
- Dubbo-monitor安装监控中心及配置过程
- CentOS 7通过Firewall开放防火墙端口
- HDU