我在从 XML 文件中获取节点值时遇到了一些问题
我的 XML 如下所示:
<item>
<item1><Description>test</Description></item1>
<item2><Description>test2</Description></item2>
<item3><Description>test3</Description></item3>
</item>
我正在尝试从 Item2 > Description 中获取“test2”。
我能够在警报消息框中显示 xml 文件,但似乎无法获得我正在寻找的值。
我正在尝试在 JavaScript 中执行此操作,到目前为止,我提出了以下建议:
function get_item()
{
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.status==200)
{
//alert(xmlhttp.responseText);
xmlDoc = xmlhttp.responseText;
var item = xmlDoc.getElementsByTagName("Description")[0];
item = item.childNodes.length ? item.childNodes[0].nodeValue : "" ;
alert(item)
} else
{
alert('Panel not communicating.Reason: '+xmlhttp.status);
}
}
xmlhttp.open("POST","http://192.168.0.5/xml_file.xml",false);
xmlhttp.send();
}
如果我删除:
var item = xmlDoc.getElementsByTagName("Description")[0];
item = item.childNodes.length ? item.childNodes[0].nodeValue : "" ;
并将警报更改为:
alert(xmlDoc)
它会提醒我的 XML 文件,所以我知道它正在读取我的 xml 文件但无法获取值。
我做错了什么还是有更好的方法来获得这个价值?
(我不想为此使用 jQuery)