为什么这个Javascript没有触发Ajax事件?

时间:2011-07-27 13:32:34

标签: php javascript ajax feed

我有一个各种各样的论坛,我希望每隔一段时间自动刷新帖子。我在页面加载启动时使用Ajax,稍后我将实现自动刷新。我遇到的问题是(我相信)引发Ajax请求。当我点击我的标题时(为了调试),我有一个Ajax请求的事件处理程序。我不会发布我的所有代码,只是这里最相关的部分,但是如果你想要你认为我的代码可能存在其他地方的问题,请随时查看www.ethoma.com/testhome.php发送一个请求www.ethoma.com/getposts.php。

Ajax请求功能:

function getPosts(category, page, sort)
{
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("postcontainer").innerHTML=xmlhttp.responseText;
        }
}
var queryString = "?category=" + category + "&page=" + page + "&sort=" + sort;
xmlhttp.open("GET","getuser.php" + queryString,true);
xmlhttp.send();
}

我的PHP页面应该通过echo调用返回正确的html代码。在旁注中,可以在我通过PHP页面返回的代码中嵌入html标签(新手问题)?

如果您认为问题不在此代码段中,请再次随意浏览这两个页面。感谢所有观看/回答这个问题的人 - 这里的每个人都非常乐于助人。

1 个答案:

答案 0 :(得分:0)

我查看了您网站的实时版本,并在onreadystatechange中使用断点运行它。你没有看到任何东西的原因是getuser.php 404的。

特别是被调用的URL是http://www.ethoma.com/getuser.php?category=[object%20HTMLAllCollection]&page=1&sort=(我很确定该类别是一个错误)并产生404,然后使用readyState = 2和status = 404调用onreadystatechange