java - DOM解析说明

标签 java dom xmlnode jaxp

我正在浏览 JAXP DOM 轨迹,其中有一个 DOM 混合内容模型,如下所示

<sentence>This is an <bold>important</bold> idea.</sentence>

解释如下

注意 - DOM 节点 API 定义了 nodeValue()、nodeType() 和 nodeName() 方法。对于第一个元素节点,nodeName() 返回 sentence,而 nodeValue() 返回 null。对于第一个文本节点,nodeName() 返回#text,nodeValue() 返回“This is an”。重要的一点是元素的值与其内容不同。

我的问题是为什么在 Element 节点上调用的 getNodeValue() 返回 null。它应该有什么? Element 节点中的 value 实际上是什么?如果我想为元素节点设置一个值,我该怎么做?请解释。

最佳答案

Element 的值节点在设计上始终为 null。查看Node documentation获取预期值列表。

这最终来自 W3C DOM level 3 design .

关于java - DOM解析说明,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20631690/

相关文章:

javascript - jQuery - 检查标签的内容是否等于某些文本,然后执行某些操作

c# - 如何制作 XML 节点的副本及其所有子节点和值但名称不同 C# .NET

c# - 将 XElement 转换为 XmlNode

java - JPA 中更好的异常处理

java - 使用 artifactory/maven 的配置和属性文件的最佳实践

java - 使用 JNA 库使用 NetShareAdd windows Api 时出现无效参数错误

javascript - 为什么不在 2017 年将 Array.prototype 方法添加到 NodeList.prototype 中?

java - 事件调用不适用于按键绑定(bind)或单击 - 逻辑错误是什么?

javascript - Angular - 修改指令中 DOM 元素的正确方法?

java - 如何在 java 的 org.w3c.dom.Node 中获取 TEXT_NODE 的标记名