繁体   English   中英

XML解析器似乎无法在我的JavaScript中工作

[英]XML Parser doesn't seem to work in my javascript

我正在尝试从JavaScript文件读取XML文件。

XML文件:

<?xml version="1.0" encoding="utf-8"?>
<pct>
    <occ>
        <morphology>A</morphology>
        <morphology>B</morphology>
        <morphology>C</morphology>
    <morphology>D</morphology>
    </occ>
    <life>
        <morphology>X</morphology>
        <morphology>Y</morphology>
        <morphology>Z</morphology>
    </life>
</pct>

这是Javascript代码段:

function loadDynamic(){
xmlDoc = loadXMLDoc("data.xml");
    ......
}

function loadXMLDoc(filename){
if (window.XMLHttpRequest)
  {// code for IE7+, Firefox, Chrome, Opera, Safari
  xmlhttp=new XMLHttpRequest();
  }
else
  {// code for IE6, IE5
  xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
  }
xmlhttp.open("GET",filename,true);
xmlhttp.send();
return xmlhttp.responseXML;
}

现在,我知道loadXMLDoc函数正在运行,因为在Chrome控制台上检查时,我在xmlhttp.responseXML中看到了XML文档。 但是我的xmlDoc始终为null。

我不知道我要去哪里错了,任何帮助将不胜感激!

谢谢!!

我怀疑当您检查它时,是在给调用时间一个完成的时间,但是当您的程序刚刚运行时,它会在调用完成之前返回responseXML(因此它仍然为null)。

您可以通过关闭异步请求来防止这种情况-基本上,只需将true更改为false即可:

xmlhttp.open("GET",filename,false);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM