PHP的简单AJAX示例无法正常工作

时间:2012-08-14 01:36:43

标签: php ajax

这是关于PHP的第一个问题,请耐心等待。我一直在关注phpacademy.org的教程。

我坚持一个教程,其中给出了AJAX的介绍。我输入了作为导师的确切代码,但仍然无法完成。

我搜索了很多,但它没有帮助。有人可以帮帮我吗?这是我的代码:

<html>
<head>
<script type="text/javascript">
function load(){

if(window.XMLHttpRequest)
    xmlhttp=new XMLHttpRequest();
else
    xmlhttp=new ActiveXObject('Microsoft.XMLHTTP');

xmlhttp.onreadystatechange=function(){
if(xmlhttp.readyState==4 && xmlhttp.status==200){
    document.getElementsById('adiv').innerHTML=xmlhttp.responseText;
}
}
xmlhttp.open('GET', 'AJAX.inc.php', true);
xmlhttp.send();
}
</script>
</head>
<body>
<div id="adiv"></div>
<input type="submit" value="Submit" onclick="load();">
</body>
</html>

这是AJAX.inc.php文件:

<?php
echo 'Hello AJAX';
?>

然而来自w3school.com的另一个example正在运作。

可能重复: AJAX not working with XAMPP or is it just impossible

但这个问题没有得到妥善回答(或者我不理解)。请有人澄清一下吗?

2 个答案:

答案 0 :(得分:2)

没有document.getElementsById方法。

document.getElementsById('adiv').innerHTML=xmlhttp.responseText;

应该是

document.getElementById('adiv').innerHTML=xmlhttp.responseText;

答案 1 :(得分:1)

<html>
<head>
<script type="text/javascript">
function load(){

if(window.XMLHttpRequest)
    {
    xmlhttp=new XMLHttpRequest();
    }
else
    {
    xmlhttp=new ActiveXObject('Microsoft.XMLHTTP');
    }
xmlhttp.onreadystatechange=function(){
if(xmlhttp.readyState==4 && xmlhttp.status==200){
    document.getElementById('adiv').innerHTML=xmlhttp.responseText;
}
}
xmlhttp.open('GET', 'ajax_php.php', true);
xmlhttp.send();
}
</script>
</head>
<body>
<div id="adiv"></div>
<input type="submit" value="Submit" onclick="load();">
</body>
</html>