如何从ajax循环创建进度条?

时间:2015-03-25 10:43:34

标签: php jquery ajax

我的服务器端数据如下:

$total=100;
$jd=array();
for($i=1;$i<=$total; $i++){
    $jd["current_value"]=$i;
    $jd["total"]=$total;
    $jd["some_extra_data"]="Extra data-$i";
    echo json_encode($jd);
    sleep(1);
}

现在我想从ajax请求数据上面创建一个进度条。

但是我没有从请求中获得单个数据。我一直都能得到完整的数据。所以,我不能创建一个进度条。 我该如何申请? 让我开心。感谢。

1 个答案:

答案 0 :(得分:0)

如果您对使用JS库不太不利,那么您可以考虑使用JQuerys UI库。

http://jqueryui.com/progressbar/

<!doctype html>
<html lang="en">
<head>
  <meta charset="utf-8">
  <title>jQuery UI Progressbar - Default functionality</title>
  <link rel="stylesheet" href="//code.jquery.com/ui/1.11.4/themes/smoothness/jquery-ui.css">
  <script src="//code.jquery.com/jquery-1.10.2.js"></script>
  <script src="//code.jquery.com/ui/1.11.4/jquery-ui.js"></script>
  <link rel="stylesheet" href="/resources/demos/style.css">
  <script>
  $(function() {
    $( "#progressbar" ).progressbar({
      value: 50
    });
  });
  </script>
</head>
<body>
    <div id="progressbar"></div> 
</body>
</html>

如果你要将它与JQuery Ajax请求结合起来,那么你应该能够实现你的目标:http://api.jquery.com/jquery.ajax/

然后,您可以定期调用服务器端页面以获取填充进度条的值。

如果有直接指示,请告诉我,如果需要,我可以详细说明。