zoukankan      html  css  js  c++  java
  • 两个ajax写在一起报错

    这样做完导致的结果是:在谷歌浏览器页面正常显示,在火狐浏览器会不定期出现系统异常错误提示!
    最后分析原因是:
      从异步请求的执行原理来看,我们知道当一个异步请求发送时,浏览器不会处于锁死、等待的状态,从一个异步请求发送到获取响应结果的期间,浏览器还可以进行其它的操作。这就意味着多个异步请求的执行时并行的。
    两个ajax异步请求(Bootstrap表格在加载时也是ajx异步请求)冲突,因为异步问题,在onload方法中调用两个ajax异步,其实相当于同时发送两个请求。执行的快与慢,要看响应的数据量的大小及后台逻辑的复杂程度。selectMenu()请求的下拉列表数据没有展示出来,这说明Bootstrap的tableInit方法 对页面的操作快于selectMenu,所以导致页面出错。
    解决办法:
      当然针对这个问题而言还有很多解决办法,这里提供三种解决方案:
      (1)Ajax2()方法的执行放到Ajax1()的success回调函数的最后一行。
      (2)Ajax1()的异步请求方法中,增加一个回调函数 :complete : Ajax2
      (3)把Ajax1()的异步设为同步:async : false
    通过这几种方法就能完美解决问题了。

  • 相关阅读:
    旧梦重温
    树莓派改用中山大学软件源
    [翻译]lpeg入门教程
    为python-sproto添加map支持
    玩家回档原因分析
    为sproto添加python绑定
    如何快速编写Vim语法高亮文件
    windows调试器尝鲜
    休斯顿,我们遇到了一个问题
    糟糕的十一月
  • 原文地址:https://www.cnblogs.com/xzjf/p/7511041.html
Copyright © 2011-2022 走看看