现在我正努力让这个简单的PHP AJAX请求工作。

<html>
    <head>
      <script type="text/javascript">
        function getSuggestions(type){
          if(type == "")
          {
            document.getElementById("entries").innerHTML="test"
            return;
          }
          if (window.XMLHttpRequest)
          {// code for IE7+, Firefox, Chrome, Opera, Safari
            xmlHttp=new XMLHttpRequest();
          }
          else
          {// code for IE6, IE5
            xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
          }
          xmlHttp.onreadystatechange = function(){
            if(xmlHttp.readyState == 4 && xmlHttp.status == 200)
            {
              document.getElementById("entries").innerHTML=xmlHttp.response;
            }
          }
          xmlHttp.open("GET","getData.php?status="+type,true);
          xmlHttp.send();
        }
      </script>
    </head>
    <body>
    <div id="A" onclick='getSuggestions("A")'>Click for A</div>
    <div id="P" onclick='getSuggestions("P")'>Click for P</div>
    <div id="R" onclick='getSuggestions("R")'>Click for R</div>
    <div id="entries"></div>
    </body>
   </html>

下面是getData.php
<?php
  $status = $_GET["status"];
  echo $status;
?>

每次我点击任何标签,我都会在“entries”标签中得到“undefined”。有谁能解释一下为什么没有定义吗?

最佳答案

使用xmlHttp.responseText

09-27 17:12