首页 新闻 搜索 专区 学院

Jquery的ajax导入数据, 实时显示进度,ajax进度条的问题,

1
悬赏园豆:40 [已解决问题] 解决于 2016-03-03 19:14
function datasave(){
  //调用getproess函数
  getproess()

  //导入数据
  $.ajax({
      ........
  });
}

function getproess(){
  //获取进度信息
  $.ajax({
      ........
  });
  
  //每隔1秒运行一次
  setTimeout(getproess,1000);
}

写了两个AJAX函数,第一个用于导入数据,同时将进度信息写到Session中,第二个每隔一秒种获取Session进度信息

但是为何第二个ajax一定要等到第一个结束时才会去执行?

1.  没有设置过jquery AJAX的async 

2.  第二个ajax(获取进度信息的), 就算我随便返回个值(非session)里面的都不会去调用后台方法, 直到第1个执行完成才会进来。 也不是session的问题。。。

那么真的很奇怪啊, 大神速来~~~

奋奋奋的主页 奋奋奋 | 初学一级 | 园豆:32
提问于:2015-11-09 15:42
< >
分享
最佳答案
0

getproess()的ajax要设置成同步.  

而且在datasave()里, 你导入还没做, 就先去查询进度, 逻辑是不是想的有错误?是不是多查询了一次?

收获园豆:40
哎呦喂,我的小祖宗╰つ | 菜鸟二级 |园豆:246 | 2015-11-09 15:51

取进度的ajax设置了async: false也一样,  

我在后台判断了, 如果没值就返回空,  应该不会有影响. 

 

奋奋奋 | 园豆:32 (初学一级) | 2015-11-09 15:53

调整了方法的顺序还是一样.  这就奇怪了, 

奋奋奋 | 园豆:32 (初学一级) | 2015-11-09 15:55
其他回答(1)
0

自己解决了。 加了个变量开关

奋奋奋 | 园豆:32 (初学一级) | 2016-03-03 19:14

楼主还在不在?加我QQ2466256102,我想问下咋解决的,我碰到了同样的问题啊。你的加变量开关什么意思?

支持(1) 反对(0) cgl_ove | 园豆:200 (初学一级) | 2017-11-28 21:51
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册