Chrome下读取XML的问题

最近做了个小抽奖,名单就用xml来生成了

<?xml version="1.0" encoding="utf-8"?>
<names>
    <name id="7">a君</name>
    <name id="9">b君</name>
    <name id="10">c君</name>
<names>
  /*
    # 读取文件
    # xml文档路径
    */
    this.loadXML = function(xmlFile){
        var xmlDoc;  
        var xmlhttp = new window.XMLHttpRequest();  
        xmlhttp.open("GET",xmlFile,false);  
        xmlhttp.send(null);  
        xmlDoc = xmlhttp.responseXML.documentElement;
        return xmlDoc;  
    }

结果chrome下突然报错:cannot read property documentElement of null

一般这个错误是没有根元素造成的,但检查了一下我xml里的确是有根元素的。看下生成的源代码,看到了id的引号变成了中文的引号,看看生成代码

$xml="<?xml version="1.0" encoding="utf-8"?>
";
$xml.="<names>
";
while($row = mysql_fetch_array($res))
{
   $xml.= "<name id='".$row['uid']."'>".$row['cname']."</name>
";
}
 
$xml.= $tmp."</names>"

用的是单引号,但是chrome自己会讲转变为双引号,然后出错。

改一下就完事了。

$xml.= "<name id="".$row['uid']."">".$row['cname']."</name>
";
原文地址:https://www.cnblogs.com/cuoreqzt/p/3533711.html