-1

我一直试图弄清楚为什么我非常简单的 ajax 文件中的内容在过去一个小时左右不起作用。我正在使用 wamp 服务器,所以我将文件部署在 www 文件夹下并从 localhost 运行它,没有结果。我也尝试将它作为一个独立的 html 文件运行,也没有结果。

我正在使用谷歌浏览器。我从网上运行了一个示例代码(它嵌入在网页中),它运行良好,但在复制粘贴后,它不起作用。为什么?在我的浏览器或服务器中是否有任何我应该确保的设置?

请帮忙!我似乎找不到问题

这是代码:

    <!DOCTYPE html>
<html>
<head>
<script>
function loadXMLDoc()
{
var xmlhttp;
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("myDiv").innerHTML=xmlhttp.responseText;
    }
  }
xmlhttp.open("GET","ajax_info.txt",true);
xmlhttp.send();
}
</script>
</head>
<body>
4

1 回答 1

0

您的代码没有问题。

只需添加一个 id 的 div myDivinisde body 标签

<div id="myDiv"></div>

然后确保ajax目标页面存在。(ajax_info.txt)

然后调用loadXMLDoc页面的函数onload

<body onload="loadXMLDoc()">

生成的代码可能如下所示。

<!DOCTYPE html>
<html>
<head>
<script>
function loadXMLDoc()
{
var xmlhttp;
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("myDiv").innerHTML=xmlhttp.responseText;
    }
  }
xmlhttp.open("GET","ajax_info.txt",true);
xmlhttp.send();
}
</script>
</head>
<body onload="loadXMLDoc()">
<div id="myDiv"></div>
</body>
</html>

如果仍然myDiv没有得到 ajax 响应,请检查是否有firebug/chrome inspector console任何错误。

于 2013-05-12T08:32:54.097 回答