php没有将任何结果返回给javascript ajax对象

时间:2014-04-01 15:56:14

标签: javascript php ajax

我正在尝试使用ajax,我之前使用过它,复制了我之前的html文件中的代码并更改了发送的值,php文件来处理代码而我正在使用POST方法。但是,php脚本不会向html页面返回任何内容。我已尽力检查,所以我现在在这里。     function look(){     var x = document.getElementsByTagName('option')[document.getElementById(“region”)。selectedIndex] .value;     var ajaxRequest; //使Ajax成为可能的变量!

 try{
   // Opera 8.0+, Firefox, Safari
   ajaxRequest = new XMLHttpRequest();
 }catch (e){
   // Internet Explorer Browsers
   try{
  ajaxRequest = new ActiveXObject("Msxml2.XMLHTTP");
   }catch (e) {
      try{
     ajaxRequest = new ActiveXObject("Microsoft.XMLHTTP");
  }catch (e){
     // Something went wrong
     alert("Your browser broke!");
     return false;
  }
  }
}
   // Create a function that will receive data 
 // sent from the server and will update
 // modal section in the same page.
 ajaxRequest.onreadystatechange = function(){
   if(ajaxRequest.readyState == 4){
      var ajaxDisplay = document.getElementById("accordion");
  ajaxDisplay.innerHTML = ajaxRequest.responseText;
}
}
   // Now get the value from user and pass it to
 // server script.
 ajaxRequest.open("POST", "search.php", true);
 ajaxRequest.setRequestHeader("Content-type","application/x-www-form-urlencoded");
 alert(x);
 ajaxRequest.send("region=" + x);

}

php代码很简单

<?php
echo "The world is blue.";
?>

然而,它没有给所选的div返回任何内容。

1 个答案:

答案 0 :(得分:0)

您可能没有发布足够的信息让我们回答您的问题。但是,我承认你可能不确定首先需要提出什么问题。

首先,我必须同意@cgf。 jQuery或类似的将使这更容易。

但是让我们关注手头的问题。我们需要知道幕后发生了什么。

执行此操作的最佳方法是通过开发人员工具栏(如firebug)。 Chrome内置了一个。

所以,加载chrome并点击 F12 。这应该会在窗口底部显示一个非常繁忙的窗格。选择网络标签,然后请求您的页面/触发您的javascript。您在网络选项卡中获得了什么输出?主要是,在状态下你得到200,500(服务器错误)或404(未找到)?使用您看到/获得的内容更新您的上述问题。

我的希望是指向正确的方向。