解析简单的XML-Javascript/Ajax

Parsing simple XML - Javascript/Ajax

本文关键字:Ajax XML-Javascript 简单      更新时间:2023-09-26

我想根据XMLAjax响应动态更改页面内容。为了进行测试,我创建了一个只有一个标记的静态PHP生成的XML文件。如果标记包含字符串"yes",则应显示"AVAIL",否则应显示其他内容。为测试设置的静态值为"yes",但脚本仍然显示"Not Avail"。

实现这一目标的正确方法是什么?

我这里有一些AJAX。。

xmlhttpp.onreadystatechange=function(){
if(xmlhttpp.readyState==4 && xmlhttpp.status==200){
    var response = xmlhttpp.responseXML;
    var avail = response.getElementsByTagName("avail")[0];
    if(avail.childNodes[0].nodeValue == "yes"){
        document.getElementById("dstat").innerHTML = "AVAIL";
    }else{
        document.getElementById("dstat").innerHTML = "NOT AVAIL '" + avail + "'";
    }

}

}

domain_checker.php文件如下所示。。

<?php
Header('Content-type: text/xml');
echo "<?xml version='1.0' encoding='UTF-8'?>
<domain>
  <avail>yes</avail>
</domain>";
?>

avail是一个xml节点,您需要的是节点内的文本以针对进行测试

    avail = response.getElementsByTagName("avail")[0];
    if(avail.childNodes[0].nodeValue == "yes"){
        document.getElementById("dstat").innerHTML = "AVAIL";
    }else{
        document.getElementById("dstat").innerHTML = "NOT AVAIL";
    }