1. //事件触发顺序ajaxStart,ajaxSend,ajaxSuccess或ajaxError,ajaxComplete,ajaxStop
  2.  
  3. $(document).ajaxStart(function (event) {
  4. /*
  5. * 每一个ajax即将发送的时候触发该事件,只有一个事件对象参数
  6. */
  7. console.log('ajaxStart');
  8. })
  9.  
  10. $(document).ajaxSend(function (event,xhr,opts,err) {
  11. /*
  12. * 每一个ajax即将发送的时候触发该事件
  13. * 此方法接受四个参数,分别是事件对象,XHR对象,和发起ajax请求的配置对象,错误信息
  14. */
  15. if(opts.type == 'get'){
  16. xhr.abort();
  17. }
  18. })
  19.  
  20. $(document).ajaxSuccess(function (event,xhr,opts) {
  21. /*
  22. * 此方法接受三个参数,分别是事件对象,XHR对象,和发起ajax请求的配置对象
  23. * 每一个ajax请求成功都会触发该事件
  24. * 配置对象中的success回调会先执行,然后再执行这个事件
  25. */
  26. console.log(JSON.parse(xhr.responseText))
  27. })
  28.  
  29. $(document).ajaxError(function (event,xhr,opts,err) {
  30. /*
  31. * 此方法接受四个参数,分别是事件对象,XHR对象,和发起ajax请求的配置对象,错误信息
  32. * 每一个ajax请求失败都会触发该事件
  33. * 配置对象中的error回调会先执行,然后再执行这个事件
  34. * 如果是客户端错误导致请求失败,err的值有可能是timeout,error,abort,或者是抛出错误异常对象
  35. */
  36. console.log(err)
  37. })
  38.  
  39. $(document).ajaxComplete(function (event,xhr,opts) {
  40. /*
  41. * 此方法接受三个参数,分别是事件对象,XHR对象,和发起ajax请求的配置对象
  42. * 每一个ajax请求完成都会触发该事件,不管请求的结果如何
  43. * 配置对象中的complete回调会先执行,然后再执行这个事件
  44. */
  45. })
  46.  
  47. $(document).ajaxStop(function (event) {
  48. /*
  49. * 此方法只接受一个事件对象参数,此事件只触发一次
  50. * 当所有ajax请求完成的时候调用一次,不管ajax请求的状态是失败还是成功或是被取消
  51. */
  52. })

注意:ajaxStart和ajaxSend事件必须放在ajax请求代码之前,不然不会触发

ajax请求中的6个全局事件的更多相关文章

  1. 在ajax请求中,contentType 和 dataType 的区别?

    一.在ajax请求中,contentType 和 dataType 的区别? 1.contentType 内容类型. 1.1默认是 "application/x-www-form-urlen ...

  2. Ajax请求中的Redirect()

    页面中有一个IsLogin()方法,用以判断该请求的触发者是否登录,如果登录了,则执行查询操作,如果没有登录,则Redirect()至登录界面 页面使用了较多的Ajax请求来获取数据,而在Ajax请求 ...

  3. php中AJAX请求中使用post和get请求的区别

    之前使用这两个请求的时候,主要从几个方面考虑: 1.语义,get就是从服务器获取,一般就是获取/查询资源信息.post就是提交给服务器,一般就是更新资源信息. 2.请求文件大小,get一般只有2k这样 ...

  4. Ajax请求中的async:false/true的作用【转载】

    [Ajax请求中的async:false/true的作用] 作者:https://www.cnblogs.com/mmzuo-798/p/7098979.html 前言: 昨天在做倒计时修改的时候,发 ...

  5. Ajax请求中的async:false/true

    Ajax请求中的async:false/trueasync. 默认是 true,即为异步方式,$.ajax执行后,会继续执行ajax后面的脚本,直到服务器端返回数据后,触发$.ajax里的succes ...

  6. jquery Ajax请求中显示Loading...

    jquery Ajax请求中显示Loading... $('#btnTest').click(function(){      $.ajax({           url ---- ,根据你需要设置 ...

  7. AJAX请求中含有数组解决办法

    当我们发送AJAX请求的数据中带有数组时,是不能像普通JSON数据一样,直接放在data里发送给后台,比如有这样一个数据需要发送给后台: { "orderId": 22, &quo ...

  8. ajax请求中设置特殊的RequestHeader

    现在ajax应用已经相当广泛了,有很多不错的ajax框架可供使用.ajax是一个异步请求,也主要是一种客户端的脚本行为.那么,如何在请求之前为请求添加特殊的一些头部信息呢? 下面是一个简单的例子,我用 ...

  9. jquery ajax 请求中多出现一次OPTIONS请求及其解决办法

    http://www.tangshuang.net/2271.html 在上一篇<服务端php解决jquery ajax跨域请求restful api问题及实践>中,我简单介绍了如何通过服 ...

随机推荐

  1. ubuntu16系统中pycharm下使用git将代码提交到github仓库

    1 在系统中安装git,在terminal中输入以下命令 sudo apt-get update sudo apt-get install git 2 对git进行配置,在terminal中输入以下命 ...

  2. SQL基本练习

    .sql对大小写不敏感 .sql执行顺序select--from--where--group by--having--order by .SQL 使用单引号来环绕文本值(大部分数据库系统也接受双引号) ...

  3. POJ 1655 Balancing Act (求树的重心)【树形DP】(经典)

    <题目链接> 题目大意:给你一棵树,任意去除某一个点后,树被分成了几个联通块,则该点的平衡值为所有分成的连通块中,点数最大的那个,问你:该树所有点中,平衡值最小的那个点是什么? 解题分析: ...

  4. hdu 4513 最长不下降回文序列【manacher】

    <题目链接> 吉哥又想出了一个新的完美队形游戏!  假设有n个人按顺序站在他的面前,他们的身高分别是h[1], h[2] ... h[n],吉哥希望从中挑出一些人,让这些人形成一个新的队形 ...

  5. Android系统下用js自定义gesture事件(仿ios实现移动端事件一致)

    .katex { display: inline-block; text-align: initial; } .katex { font-family: Consolas, Inconsolata, ...

  6. [环境]vscode中python虚拟环境

    在项目.vscode/settings.json下设置 { "python.pythonPath": "/path/to/python2.7"}

  7. 4513: [Sdoi2016]储能表 数位DP

    国际惯例的题面: 听说这题的正解是找什么规律,数位DP是暴力......好的,我就写暴力了QAQ.我们令f[i][la][lb][lc]表示二进制从高到低考虑位数为i(最低位为1),是否顶n上界,是否 ...

  8. 4609: [Wf2016]Branch Assignment 最短路 DP (阅读理解题)

    Bzoj的翻译出锅了所以来官方题面:这个题应该是单向边而BZOJ说的是双向边,什么你WA了?谁叫你懒得看英文...... 显然我们能正向反向两遍SPFA处理出每个点到总部的距离和总部到每个点的距离.如 ...

  9. COGS.1689.[HNOI2010]Bounce 弹飞绵羊(分块)

    题目链接 /* 分块,维护从某位置跳到下一个块需要多少步 */ #include<cmath> #include<cstdio> #include<cctype> ...

  10. 潭州课堂25班:Ph201805201 WEB 之 页面编写 第三课 (课堂笔记)

    index.html <!DOCTYPE html> <html lang="en"> <head> <meta charset=&quo ...