循环XMLHttpRequest的问题

时间:2014-05-28 16:54:18

标签: javascript html5 loops xmlhttprequest

在提出这个问题之前,我已经阅读了很多论坛帖子,我知道我的代码中的问题很简单。我基本上是多次调用XMLHttpRequest,这超出了我之前的请求。但是我似乎无法让它工作,我尝试的一切都给了我相同的结果。

<script>
var data, req, sec;

req = new XMLHttpRequest();
req.open("GET","http://example.com",false);
req.send();
sec = JSON.parse(req.responseText);

for (num = 0; num < 10; num++){
  var req = new XMLHttpRequest();
  req.open("GET","http://example.com/?n=" + num, true);
  req.send();
  req.onreadystatechange=function()
    {
    if (req.readyState==4 && req.status==200)
      {
          data = JSON.parse(req.responseText);

        if (data.type == "heading"){
            document.body.innerHTML += "<section><h1>" + data.data + "</h1></section>";
          }

        if (data.type == "paragraph"){
            document.body.innerHTML += "<section><p>" + data.data + "</p></section>";
            }
    }
  }
}


</script>

此代码的输出仅提供http://example.com/?n=9中的文字,并且所有以前的数据都未显示在页面上。

我也遇到了一个奇怪的错误,如果我刷新页面几次,我会从http://example.com/?n=9中获得段落的多个副本,这些副本全部附加在body.innerHTML中。

感谢任何和所有帮助!

-Adrian

0 个答案:

没有答案