Javascript getElementsByTagName()[0]未定义

Javascript getElementsByTagName()[0]未定义,javascript,ajax,Javascript,Ajax,我第一次尝试一些AJAX,但遇到了一个错误。我见过一些人有类似的问题,但在通读了他们之后,我仍然无法找出我的代码出了什么问题 我遇到的问题是,rf.getElementsByTagName(“motd”)[0]显示为未定义 代码如下: function refresh() { var url = document.getElementById("url"); var req; if (window.XMLHttpRequest) { req = new X

我第一次尝试一些AJAX,但遇到了一个错误。我见过一些人有类似的问题,但在通读了他们之后,我仍然无法找出我的代码出了什么问题

我遇到的问题是,
rf.getElementsByTagName(“motd”)[0]
显示为未定义

代码如下:

function refresh() {
    var url = document.getElementById("url");
    var req;
    if (window.XMLHttpRequest) {
        req = new XMLHttpRequest();
    } else {
        req = new ActiveXObject("Microsoft.XMLHTTP");
    }
    req.onreadystatechange=function() {
        if (req.readyState==4 && req.status==200) {
            var rf;
            if (window.DOMParser) {
                parser = new DOMParser();
                rf=parser.parseFromString(req,"text/xml");
            } else {
                rf = new ActiveXObject("Microsoft.XMLDOM");
                rf.async = false;
                rf.loadXML(req); 
            }
            document.getElementById("result").innerHTML="<div id=\"success\">"+
            rf.getElementsByTagName("motd")[0]+"&nbsp;";
        } else {
            document.getElementById("result").innerHTML="<div id=\"working\">Checking...</div>";
        }
    }
    req.open("POST","g2mc_status.php",true);
    req.send("server="+url);
}
函数刷新(){
var url=document.getElementById(“url”);
var-req;
if(window.XMLHttpRequest){
req=新的XMLHttpRequest();
}否则{
req=新的ActiveXObject(“Microsoft.XMLHTTP”);
}
req.onreadystatechange=函数(){
如果(req.readyState==4&&req.status==200){
无功功率;
if(window.DOMParser){
parser=新的DOMParser();
rf=parser.parseFromString(req,“text/xml”);
}否则{
rf=新的ActiveXObject(“Microsoft.XMLDOM”);
rf.async=false;
rf.loadXML(req);
}
document.getElementById(“结果”).innerHTML=“”+
rf.getElementsByTagName(“motd”)[0]+“”;
}否则{
document.getElementById(“结果”).innerHTML=“检查…”;
}
}
请求打开(“POST”,“g2mc_status.php”,true);
请求发送(“服务器=”+url);
}
我正在尝试处理的XML(即.php文件现在设置为输出的所有XML):


能工巧匠
0
20

您正在将
req
而不是
req.responseText
req.responseXML
传递给XML解析器

否则可以正常工作:

在这里可以正常工作您将
req
而不是
req.responseText
req.responseXML
传递给XML解析器
<minecraft server="mc.nrd.li" port="25565">
    <motd>NerdConglomerate</motd>
    <players>
        <online>0</online>
        <maximum>20</maximum>
    </players>
</minecraft>