XmlHttpRequest无法正常工作,不返回任何内容

时间:2016-12-20 21:14:50

标签: javascript php

这是我的主要代码,我尝试向" stat.php"发送请求。

主要代码

<!DOCTYPE html>
<html>
 <head>
   <title>test</title>
   <meta charset="utf-8" />
   <link rel="stylesheet" href="style-index.css" />
  </head>
<body>
  <script>
    function test() {
      var req = new XMLHttpRequest();
      req.open('GET', 'http://www.cubeadvisor.fr/stat.php', true); 
      req.send(null);
      document.getElementById("timer").innerHTML=req.responseText;
    }
  </script>
  <button onclick="test()">Click me</button> 
  <p id="timer"> </p>
</body>
</html>

stat.php

<?php header('Access-Control-Allow-Origin: *');   
echo "test";  ?>

什么都没有返回,我找不到任何错误。 我请求你帮忙解决这个问题。

1 个答案:

答案 0 :(得分:3)

这是一个异步事件。您需要使用onreadystatechange事件进行侦听,直到从服务器获得响应,然后触发更新功能。

req.onreadystatechange = function() {
  if (this.readyState == 4 && this.status == 200) {
    document.getElementById("timer").innerHTML = this.responseText;
  }
};

工作代码段

<script>
  function test() {
    var req = new XMLHttpRequest();
    req.open('GET', 'http://www.cubeadvisor.fr/stat.php', true);
    req.send(null);
    req.onreadystatechange = function() {
      if (this.readyState == 4 && this.status == 200) {
        document.getElementById("timer").innerHTML = this.responseText;
      }
    };
  }
</script>
<button onclick="test()">Click me</button>
<p id="timer"></p>