论坛首页 Web前端技术论坛

如何精确控制ajax回调方法的执行顺序

浏览 6733 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2007-10-24  
我用的是prototype 1.3 ,为了做一个loading的效果,分别写了onLoading,onComplete: 两个回调方法。
大多数情况下会先执行onLoading,但有时候会执行了onComplete后执行onLoading。导致界面上一直是loading的状态。除了用一个变量开关来控制外还有其他方法吗,用变量多了就不好管理
   发表时间:2007-10-24  
不应该是先complete后loading了,可能是你的request在loading后Exception了,没有走complete,可以这样
Ajax.Responders.register({
  onLoading: function() {
    bar_on();
  },
  onComplete: function() {
    bar_off();
  },
  onException: function() {
    bar_off();
  }
});
0 请登录后投票
   发表时间:2007-10-25  
可是我没有看到有exception抛出阿
0 请登录后投票
   发表时间:2007-11-01  
我也遇到这个问题了。是不是prototype的onloading有问题?
0 请登录后投票
   发表时间:2007-11-12  
如果说出现了异常,怎么在onException显示详细的异常信息?
0 请登录后投票
   发表时间:2007-11-21  
这个应该算是prototype的bug吧,使用Responders.register或者把onLoading替换成onCreate就可以了
0 请登录后投票
   发表时间:2008-08-30  
还是自己写一个方法比较好,
在open()之前用varName.innerHTML = "wait.gif"
然后在ajax.success = function() {
      varName.innerHTML = "";
}
不就OK了,能自己写的就自己多写一点,对自己进步大一写哦
0 请登录后投票
论坛首页 Web前端技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics