当tag包含嵌入元素时,如何使用XML Parser并通过tagName获取元素?

时间:2017-05-22 09:15:06

标签: javascript html xml xml-parsing

我正在使用XMLParser从标记中获取数据。

此标记如下:

<tagName elem="XXX"></tagName>

我想得到:XXX

根据文件,我的意思是:

    parseMyXML = new DOMParser();
    xmlDoc = parseMyXML.parseFromString(contentXML,"text/xml");

    var code_XXX = xmlDoc.getElementsByTagName("tagName")[0].childNodes[0].nodeValue;

我有一个错误:Uncaught (in promise) TypeError: Cannot read property 'nodeValue' of undefined

我需要的是进入tagName并获取elem

的内容

2 个答案:

答案 0 :(得分:0)

属性不是子节点。

xmlDoc.getElementsByTagName("tagName")[0].getAttribute("elem");

答案 1 :(得分:-1)

使用jQuery,你可以做这样的事情。

    var $xml = $.parseXML(xml),
       value = $xml.find('tagName').text();

如果你使用普通的JS,你应该像这样解析xml。

if (window.DOMParser) {
  // code for modern browsers
  parser = new DOMParser();
  xmlDoc = parser.parseFromString(text,"text/xml");
} else {
  // code for old IE browsers
xmlDoc = new ActiveXObject("Microsoft.XMLDOM");
  xmlDoc.async = false;
  xmlDoc.loadXML(text); 
}