全局 Ajax 事件处理器
jQuery中将Ajax请求和响应分成了若干(5)个阶段 并且允许开发者在Ajax请求和响应的不同阶处理不同的逻辑,
这些方法用于注册事件处理器,用来处理页面上的任何 Ajax 请求,当某些事件触发后,这些事件处理器被调用。例如正在加载的页面的loading图片...
这五个方法分别是:
.ajaxStart() 准备发送
.ajaxSend() 请求发出
.ajaxSuccess() 请求成功
.ajaxError() 请求失败
.ajaxComplete() 任一单个Ajax请完成时会触发
.ajaxStop() 某一页所有Ajax请求都完成时才触发
详细描述:
- .ajaxStart() : 在AJAX 请求刚开始时执行一个处理函数。每当一个Ajax请求即将发送,jQuery检查是否有任何其他响应过程中的Ajax请求(注:未完成的请求)。如果没有检查到,jQuery就会触发
ajaxStart事件,在这个时间点所有处理函数都会使用.ajaxStart()方法注册并执行。
例:当Ajax请求开始发送时显示一个信息 (没有一个Ajax请求是已经激活的).
$('.btn').ajaxStart(function() {
$( "#loading" ).show();
});
- .ajaxSend() : 在Ajax请求发送之前绑定一个要执行的函数。每当一个Ajax请求即将发送,jQuery就会触发
ajaxSend事件,在这个时间点所有处理函数都会使用.ajaxSend()方法注册并执行。
例:当Ajax请求即将发送前显示一个信息。
$('.btn').ajaxSend(function(event, request, settings) {
$( "#msg" ).append( "<li>Starting request at " + settings.url + "</li>" );
});
- .ajaxSuccess() : 绑定一个函数当 Ajax 请求成功完成时执行。每当一个Ajax请求成功完成,jQuery就会触发
ajaxSuccess事件,在这个时间点所有处理函数都会使用.ajaxSuccess()方法注册并执行。
例:当Ajax请求成功完成时,显示一个信息。
$('.btn').ajaxSuccess(function(event, request, settings) {
$( "#msg" ).append( "<li>Successful Request!</li>" );
});
- .ajaxError() : Ajax请求出错时注册一个回调处理函数。每当一个Ajax请求出错时,jQuery就会触发
ajaxError事件,在这个时间点所有处理函数会使用.ajaxError()方法注册并执行。
例:当Ajax请求失败后显示一个信息.
$('.btn').ajaxError(function(event, request, settings) {
$( "#msg" ).append( "<li>Error requesting page " + settings.url + "</li>" );
});
- .ajaxComplete() 当Ajax请求完成后注册一个回调函数。每当一个Ajax请求完成,jQuery就会触发
ajaxComplete事件,在这个时间点所有处理函数会使用.ajaxComplete()方法注册并执行。
例:当Ajax请求完成后显示一个信息。
$('.btn').ajaxComplete(function(event,request, settings) {
$( "#msg" ).append( "<li>Request Complete.</li>" );
});
- .ajaxStop():在AJAX 请求完成时执行一个处理函数。每当一个Ajax请求完成,jQuery检查是否有任何其他响应过程中的Ajax请求(注:未完成的请求)。如果都执行完成,jQuery就会触发
ajaxStop事件,在这个时间点所有处理函数都会使用.ajaxStop()方法注册并执行。如果一个未处理完成的Ajax请求用beforeSend回调函数返回false取消,ajaxStop事件也被触发
例:在Ajax请求停止后隐藏加载信息
$('.btn').ajaxStop(function() {
$( "#loading" ).hide();
});
注:监听不同阶段的元素可以是任意DOM元素,但是从版本1.8开始只能绑订到document
此随笔参照 jQuery API 中文文档
全局 Ajax 事件处理器的更多相关文章
- jQuery全局Ajax事件处理器
1. .ajaxComplete( handler(event, XMLHttpRequest, ajaxOptions) ) 每当一个Ajax请求完成,jQuery就会触发ajaxComplete ...
- jQuery之Ajax--全局Ajax事件处理器
1.这些方法用于注册事件处理器,用来处理页面上的任何 Ajax 请求,当某些事件触发后,这些事件处理器被调用.如果jQuery.ajaxSteup()中的 global 属性被设置为 true (这也 ...
- 全局ajax事件
必须当页面上存在任何ajax请求的时候都将触发这些特定的全局ajax处理函数. 如果在jQuery.ajaxSetup()中的global属性设置成true,那么这些全局函数将会在每一个ajax上面都 ...
- 全局ajax的使用
一.ajax介绍 详细介绍请看:http://www.runoob.com/ajax/ajax-tutorial.html AJAX = Asynchronous JavaScript and XML ...
- 关于vue.js中事件处理器的练习
html: <!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8 ...
- c#全局鼠标事件以及鼠标事件模拟
最近在编写Max插件时,其主容器FlowLayoutPanel由于隐藏了滚动条,要实现按住鼠标中键上下拖动的功能,因此尝试了全局鼠标事件.以及鼠标勾子,可惜由于Max不争气?都未能实现,于是代码报废, ...
- jQuery中Ajax事件顺序及各参数含义
Ajax会触发很多事件.有两种事件,一种是局部事件,一种是全局事件: 局部事件:通过$.ajax来调用并且分配. $.ajax({ beforeSend: function(){ // Handle ...
- 前端MVC Vue2学习总结(四)——条件渲染、列表渲染、事件处理器
一.条件渲染 1.1.v-if 在字符串模板中,如 Handlebars ,我们得像这样写一个条件块: <!-- Handlebars 模板 --> {{#if ok}} <h1&g ...
- ASP.NET Core Web API下事件驱动型架构的实现(二):事件处理器中对象生命周期的管理
在上文中,我介绍了事件驱动型架构的一种简单的实现,并演示了一个完整的事件派发.订阅和处理的流程.这种实现太简单了,百十行代码就展示了一个基本工作原理.然而,要将这样的解决方案运用到实际生产环境,还有很 ...
随机推荐
- notepad++实现python运行
一.先确保windows电脑上先安装python解释器 方法参考:https://www.cnblogs.com/hepeilinnow/p/9727922.html 二.打开notepad++,写一 ...
- 【操作系统作业—lab1】linux shell脚本 遍历目标文件夹和所有文件 | 包括特殊字符文件名的处理
要求:写一个linux bash脚本来查看目标文件夹下所有的file和directory,并且打印出他们的绝对路径. 运行command:./myDir.sh input_path output_ ...
- Ajax知识总结
一 AJAX = Asynchronous JavaScript and XML(异步的 JavaScript 和 XML). AJAX 不是新的编程语言,而是一种使用现有标准的新方法.AJAX 最大 ...
- 前后端不分离部署教程(基于Vue,Nginx)
有小伙伴私信问我vue项目是如何进行前后端不分离打包发布的,那我岂能坐视不管,如此宠粉的我肯定是要给发一篇教程的,话不多说,开始操作 前端假如我们要发布我们的Vue项目,假设我们前端用的是histor ...
- ECSHOP和SHOPEX快递单号查询国际EMS插件V8.6专版
发布ECSHOP说明: ECSHOP快递物流单号查询插件特色 本ECSHOP快递物流单号跟踪插件提供国内外近2000家快递物流订单单号查询服务例如申通快递.顺丰快递.圆通快递.EMS快递.汇通快递.宅 ...
- ko绑定----记录
1.绑定变量 globalData = ko.observable({item:{}}); 2.绑定html ko.applyBindings(globalData, document.getElem ...
- Leecode刷题之旅-C语言/python-83删除排序链表中的重复元素
/* * @lc app=leetcode.cn id=83 lang=c * * [83] 删除排序链表中的重复元素 * * https://leetcode-cn.com/problems/rem ...
- ctf题目writeup(1)
2019/1/28 题目来源:爱春秋 https://www.ichunqiu.com/battalion?t=1 1. 该文件是一个音频文件: 首先打开听了一下,有短促的长的....刚开始以为是摩斯 ...
- 嵌入式框架Zorb Framework搭建五:事件的实现
我是卓波,我是一名嵌入式工程师,我万万没想到我会在这里跟大家吹牛皮. 嵌入式框架Zorb Framework搭建过程 嵌入式框架Zorb Framework搭建一:嵌入式环境搭建.调试输出和建立时间系 ...
- python2.7入门---异常处理
python提供了两个非常重要的功能来处理python程序在运行中出现的异常和错误.我们可以使用该功能来调试python程序. 异常处理. 断言(Assertions). 首先来看py ...