加载请求: .ajaxStart() 和 .ajaxstop()

  1. $(document).ajaxStart(function(){
  2. $('.loading').show();
  3. }).ajaxStop(function(){
  4. $('.loading').hide();
  5. });

错误处理: .ajaxError()

  1. //1 $.ajax()使用属性提示错误
  2. $('form input[type=button]').click(function(){
  3. $.ajax({
  4. type:"post",
  5. url:"test1.php",
  6. async:true,
  7. data:$('form').serialize(),
  8. success:function(response,status,xhr){
  9. $('#box').html(response);
  10. },
  11. // timeout:3000
  12. // global:false
  13. error:function(xhr,errorText,errorType){
  14. // alert(errorText + ':' +errorType);
  15. alert(xhr.status + ':' +xhr.statusText);
  16. }
  17.  
  18. });
  19. });
  20.  
  21. //2 $.post()使用连缀.error()方法提示错误,将被.fail()取代
  22. $('form input[type=button]').click(function(){
  23. $.post('test1.php').error(function(xhr,errorText,errorType){
  24. alert(errorText + ':' +errorType);
  25. alert(xhr.status + ':' +xhr.statusText);
  26. });
  27. });
  28.  
  29. //3 使用全局.ajaxError()方法
  30. $(document).ajaxError(function(event,xhr,settings,info){
  31. alert(event.type);
  32. alert(event.target);
  33. for(var i in event){ //打印出event的所有属性
  34. document.write(i + '<br />');
  35. }
  36. });

.ajaxSuccess(),对应一个局部方法:.success(),请求成功完成时执行。

.ajaxComplete(),对应一个局部方法:.complete(),请求完成后注册一个回调函数。

.ajaxSend(),没有对应的局部方法,只有属性 beforeSend,请求发送之前要绑定的函数。

  1. //$.post()使用全局
  2. $('form input[type=button]').click(function(){
  3. $.post('test.php',$('form').serialize());
  4. });
  5.  
  6. $('document').ajaxSend(function(){
  7. alert(发送请求之前执行);
  8. }).ajaxComplete(function(response,status,xhr){
  9. alert('请求完成后,不管是否失败成功');
  10. }).ajaxSuccess(function(event,xhr,settrings){
  11. alert('请求成功后,不管是否成功');
  12. }).ajaxError(function(event,xhr,settrings){
  13. alert('请求失败后');
  14. });
  15.  
  16. //$.post()使用局部
  17. $('form input[type=button]').click(function(){
  18. $.post('test.php',$('form').serialize()).success(function(){
  19. alert('请求成功后');
  20. }).complete(function(){
  21. alert('请求完成后');
  22. }).error(function(){
  23. alert('请求失败后');
  24. });
  25. });
  26.  
  27. //$.ajax()使用属性
  28. $('form input[type=button]').click(function(){
  29. $.ajax({
  30. type:"post",
  31. url:"test1.php",
  32. async:true,
  33. data:$('form').serialize(),
  34. success:function(response,status,xhr){
  35. alert('请求成功后');
  36. },
  37. complete:function(){
  38. alert('请求完成后,不管失败成功');
  39. },
  40. beforeSend:function(){
  41. alert('发送请求之前');
  42. },
  43. error:function(xhr,errorText,errorType){
  44. alert('请求失败后');
  45. }
  46. });
  47. });

注:

jQuery1.5 版本以后,使用.success().error().complete()连缀的方法,可以用.done().fail().always()取代。

Ajax :六个全局事件的更多相关文章

  1. jquery的ajax全局事件详解

        jquery在ajax方面是非常强大和方便的,以下是jquery进行ajax请求时方法模板: $.ajax({ type: "get", url: "" ...

  2. 关于数据未渲染完,要获取document高度问题——ajax全局事件

    昨天在做开发时,遇到这样一个问题,当页面刚加载的时候,就要获取document的高度,可是此时页面上所有的ajax请求的数据都还没有渲染到页面上,所以导致得到的document的高度仅仅是页面结构的高 ...

  3. Jquery表单序列化和AJAX全局事件

    Jquery表单序列化 1.必须放在form标签内: 2.控件必须有name属性: 3.控件的value值会提交到服务器: 如: <form id="form1"> & ...

  4. 锋利的jQuery读书笔记---jQuery中Ajax--序列化元素、Ajax全局事件

    serialize()方法: 作用于一个jQuery对象,它能够将DOM元素内容序列化为字符串,用于Ajax请求. <!DOCTYPE html> <html> <hea ...

  5. ajax全局事件

    作用:当你的页面存在很多ajax事件的话,我们有一些信息是公共的,可以复用,我们可以用全局事件进行编写,因为每一个ajax事件调用,都会触发ajax全局事件. jquery的ajax方法的全部全局事件 ...

  6. jquery ajax 全局事件

    jquery的ajax方法的全部全局事件:(不管是$.ajax().$.get().$.load().$.getJSON()等都会默认触发全局事件) ajaxStart:ajax请求开始前 ajaxS ...

  7. jQuery中的Ajax全局事件

    Ajax全局事件 全局事件会在有ajax请求的情况下触发. 方法名称 说明 ajaxStart(callback) Ajax请求开始时执行的函数 ajaxStop(callback) Ajax请求结束 ...

  8. nprogress进度条和ajax全局事件

    nprogress和ajax全局事件 nprogress 官方网站:http://ricostacruz.com/nprogress/ 下载地址:https://github.com/rstacruz ...

  9. 【锋利的jQuery】中全局事件ajaxStart、ajaxStop不执行

    最近一直都在研究[锋利的jQuery],确实是一本好书,受益匪浅.但由于技术发展及版本更新等原因,里面还是有些坑需要踩的. 比如:第六章七节中提到的全局事件ajaxStart.ajaxStop照着案例 ...

随机推荐

  1. 4.matlab基础

    1 函数句柄 clear all; f1=@cos t=:pi/:pi f1(t) f2=@complex f2(,) clear all %函数句柄 f1=@char %函数句柄转换为字符串 s1= ...

  2. synchronized同步机制,修饰类和修饰对象的区别

    synchronized用法 synchronized修饰的对象有几种: 修饰一个类:其作用的范围是synchronized后面括号括起来的部分,作用的对象是这个类的所有对象: 修饰一个方法:被修饰的 ...

  3. SQL like查询条件中的通配符处理

    1. SQL like对时间查询的处理方法 SQL数据表中有savetime(smalldatetime类型)字段,表中有两条记录,savetime值为:2005-3-8 12:12:00和2005- ...

  4. 更博不能忘——webpack学习笔记

    webpack是前端构建系统就像grunt和gulp(之前有学习过grunt所以也就大概明白webpack是个什么东西),所以说前端技术大部分还真是相通的,现在觉得当时多看的东西并不白费,虽然长时间不 ...

  5. Side effect (computer science)

    In computer science, a function or expression is said to have a side effect if it modifies some stat ...

  6. jenkins 展示报告

    1.下载插件 HTML Publisher plugin 2.设置说明 3.展示css 下载插件 (1).Startup Trigger: 可实现在Jenkins节点(master/slave)启动时 ...

  7. HDU 1465 不容易系列之一( 错排水题 )

    链接:传送门 思路:错排模板题,水题是非常浪费时间的 /************************************************************************ ...

  8. poj 2954 Triangle 三角形内的整点数

    poj 2954 Triangle 题意 给出一个三角形的三个点,问三角形内部有多少个整点. 解法 pick's law 一个多边形如果每个顶点都由整点构成,该多边形的面积为\(S\),该多边形边上的 ...

  9. NOIP2016 天天爱跑步 (树上差分+dfs)

    题目大意:给你一颗树,树上每个点都有一个观察员,他们仅会在 w[i] 时刻出现,观察正在跑步的玩家 一共有m个玩家,他们分别从节点 s[i] 同时出发,以每秒跑一条边的速度,沿着到 t[i] 的唯一路 ...

  10. STM32使用HAL库实现ADC单通道转换

    STM32的ADC转换还是很强大的,它具有多个通道选择,这里我就不细说,不了解的可以自行百度,这里只是选取单通道,实现ADC转换.在文章开始之前,我说一下数据左对齐跟右对齐的差别,以前一直糊里糊涂的, ...