XML DOM 节点信息

nodeName、nodeValue 和 nodeType 属性包含有关节点的信息。


尝试一下 - 实例

下面的实例使用 XML 文件 books.xml

函数 loadXMLDoc(),位于外部 JavaScript 中,用于加载 XML 文件。

获取元素节点的节点名称

本例使用 nodeName 属性来获取 "books.xml" 中根元素的节点名称。

从文本节点获取文本

本例使用 nodeValue 属性来获取 "books.xml" 中第一个 <title> 元素的文本。

更改文本节点中的文本

本例使用 nodeValue 属性来更改 "books.xml" 中第一个 <title> 元素的文本。

获取元素节点的节点名称和类型

本例使用 nodeName 和 nodeType 属性来获取 "books.xml" 中根元素的节点名称和类型。


节点的属性

在 XML DOM 中,每个节点都是一个对象

对象拥有方法和属性,并可通过 JavaScript 进行访问和操作。

三个重要的节点属性是:

  • nodeName
  • nodeValue
  • nodeType

nodeName 属性

nodeName 属性规定节点的名称。

  • nodeName 是只读的
  • 元素节点的 nodeName 与标签名相同
  • 属性节点的 nodeName 是属性的名称
  • 文本节点的 nodeName 永远是 #text
  • 文档节点的 nodeName 永远是 #document

尝试一下.


nodeValue 属性

nodeValue 属性规定节点的值。

  • 元素节点的 nodeValue 是 undefined
  • 文本节点的 nodeValue 是文本本身
  • 属性节点的 nodeValue 是属性的值

获取元素的值

下面的代码检索第一个 <title> 元素的文本节点的值:

实例

xmlDoc=loadXMLDoc("books.xml"); x=xmlDoc.getElementsByTagName("title")[0].childNodes[0]; txt=x.nodeValue;

尝试一下 >>

结果:txt = "Everyday Italian"

实例解释:

  1. 使用 loadXMLDoc() 把 "books.xml" 载入 xmlDoc 中
  2. 获取第一个 <title> 元素节点的文本节点
  3. 把 txt 变量设置为文本节点的值

更改元素的值

下面的代码更改第一个 <title> 元素的文本节点的值:

实例

xmlDoc=loadXMLDoc("books.xml"); x=xmlDoc.getElementsByTagName("title")[0].childNodes[0]; x.nodeValue="Easy Cooking";

尝试一下 >>

实例解释:

  1. 使用 loadXMLDoc() 把 "books.xml" 载入 xmlDoc 中
  2. 获取第一个 <title> 元素节点的文本节点
  3. 更改文本节点的值为 "Easy Cooking"

nodeType 属性

nodeType 属性规定节点的类型。

nodeType 是只读的。

最重要的节点类型是:

节点类型 NodeType
元素 1
属性 2
文本 3
注释 8
文档 9
相关推荐
Mr.Java.2 分钟前
Spring AI MCP Server分布式翻车现场:Streamable协议的甜蜜与危险,以及无状态救赎
java·后端·spring·ai·负载均衡
ZC跨境爬虫2 分钟前
跟着 MDN 学CSS day_7:(层叠优先级与继承)
前端·css·数据库·ui·html
夕除2 分钟前
spring boot 11
java·spring boot·后端
TechPioneer_lp4 分钟前
就业指导|中九非科班毕业,华为 OD 做 Java 后端想转 C++,能找到深度学习挂钩的岗工作吗?
java·c++·华为od·华为·就业指导·校招指导
Shadow(⊙o⊙)8 分钟前
qt信号和槽链接的接入与断开
开发语言·前端·c++·qt·学习
慕斯fuafua8 分钟前
JS——DOM操作
前端·javascript·html
Dicky-_-zhang10 分钟前
分布式ID生成方案详解与实战
java·jvm
m0_4746067811 分钟前
JAVA - 使用Apache POI 自定义报表字段手写导出(支持-合并单元格)
java·开发语言·apache
zhz521412 分钟前
Spring Boot 接入国密实战:传输加密(TLCP)+ 密码加密(SM4)
java·spring boot·后端·国密·sm4
人道领域16 分钟前
【LeetCode刷题日记】617.合并二叉树(空间换安全,还是原地省内存)
java·数据结构·算法·leetcode