无法访问 XML 元素的节点值

Can't access node value of XML element

提问人:Leander Pfeiffer 提问时间:7/15/2021 最后编辑:ypowLeander Pfeiffer 更新时间:7/16/2021 访问量:141

问:

我正在为一个问题而苦苦挣扎,我正在尝试访问 XML 元素的值。我可以访问所有子项和属性,但我似乎无法获取节点的内部内容。

var domElement = (new DOMParser()).parseFromString(xmlDataString, "application/xml");
$scope.output = domElement.getElementsByTagName("inputEntry")[0].childNodes[0].nodeValue;

我尝试过 .innerHTML、.textContent 和 .nodeValue,但输出始终未定义。 我尝试访问的 XML 元素如下所示:

<inputEntry id= \"test\">
\n
     <text>\"this should be the output\"</text>
\n
</inputEntry>

我错过了什么?提前致谢!

JavaScript DOM XML 解析 DomParser

评论


答:

1赞 Jack Fleeting 7/15/2021 #1

你使用 xpath 到达那里:

var xpath = "//inputEntry/text/text()";
var x = domElement.evaluate(xpath, domElement, null, XPathResult.ORDERED_NODE_SNAPSHOT_TYPE, null);
console.log(x.snapshotItem(0).textContent);

输出:

"this should be the output"