Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/448.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript AJAX以渐进的方式读取数据,而不仅仅是在它';完成了_Javascript_Jquery_Ajax_Progress Bar - Fatal编程技术网

Javascript AJAX以渐进的方式读取数据,而不仅仅是在它';完成了

Javascript AJAX以渐进的方式读取数据,而不仅仅是在它';完成了,javascript,jquery,ajax,progress-bar,Javascript,Jquery,Ajax,Progress Bar,我喜欢为我的ajax调用创建一个进度条。 为此,我可以使服务器端脚本返回其进度状态。 所以我需要javascript来读取这个进度级别并显示它 是否可能,或者我走错了路?或者每隔一段时间轮询,在最后一次成功调用时返回有效负载,或者运行两个AJAX调用—第一个调用检索实际数据,第二个轮询更新百分比。您可以尝试类似的方法(一些伪代码,假设是jQuery,因为您已经将问题标记为jQuery): 服务器端的这个处理需要多长时间?10秒,1分钟,5分钟,…?假设它需要45秒或更少(可能是即时的)确定进度的

我喜欢为我的ajax调用创建一个进度条。 为此,我可以使服务器端脚本返回其进度状态。 所以我需要javascript来读取这个进度级别并显示它


是否可能,或者我走错了路?

或者每隔一段时间轮询,在最后一次成功调用时返回有效负载,或者运行两个AJAX调用—第一个调用检索实际数据,第二个轮询更新百分比。

您可以尝试类似的方法(一些伪代码,假设是jQuery,因为您已经将问题标记为jQuery):


服务器端的这个处理需要多长时间?10秒,1分钟,5分钟,…?假设它需要45秒或更少(可能是即时的)确定进度的计算方法是什么?Project有1500个文件,100个文件已每隔一段时间复制到远程serverPoll?是否有任何特定的jquery函数?这就是问题所在,因为这是一个新的lead,所以我给你的评分是1,但这种方法带来了另一个复杂问题,因为第一个脚本应该更新progression level对于要读取的第二个脚本,如果第一个脚本在过程中发送该级别会更好听起来您对Comet模式很感兴趣。请阅读以下内容:,然后按照以下链接进行操作:。但是:如果可以,请避免不必要的复杂性。
var poll;
$.ajax({
  url: 'your_ajax_script',
  beforeSend: function(){ // set up out-of-band status polling
    poll = setInterval( function(){
      $.get('your_script_that_returns_status',
        function(data){ 
          update_progressbar(data);
        });
      }, 1000 ); // update every second?
  },
  success: function(data) {
    clearInterval( poll ); // stop polling
    finalize_or_hide_progressbar(); // clean up
    do_something_with( data ); // your "done" logic
  }
});