无法访问 XML 元素的节点值

Posted

技术标签:

【中文标题】无法访问 XML 元素的节点值【英文标题】:Can't access node value of XML element 【发布时间】:2021-09-24 08:23:39 【问题描述】:

我正在努力解决一个问题,我正在尝试访问 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>

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

【问题讨论】:

【参考方案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"

【讨论】:

以上是关于无法访问 XML 元素的节点值的主要内容,如果未能解决你的问题,请参考以下文章

XML DOM – 访问节点概述

当您无法访问官方 GATT XML 文件时,如何构建 BLE 应用程序?

HBase启动后端口60010无法访问

无法使用 c# 从 xml 读取值/节点

Swift 树结构、编码和访问节点

从 C# 访问 XML 数据