DOM 节点信息
-
定义和使用
nodeName,nodeValue 和 nodeType 属性包含有关节点的信息。下面的示例使用XML文件books.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未定义
- 文本节点的nodeValue是文本本身
- 属性节点的nodeValue是属性值
-
获取元素的值
以下代码检索第一个<title>元素的文本节点值:
尝试一下var x = xmlDoc.getElementsByTagName("title")[0].childNodes[0]; var txt = x.nodeValue;
示例说明:- 假设您已将 “books.xml” 加载到xmlDoc中
- 获取第一个 <title> 元素节点的文本节点
- 将txt变量设置为文本节点的值
-
更改元素的值
以下代码更改第一个 <title>元素的文本节点值:
尝试一下var x = xmlDoc.getElementsByTagName("title")[0].childNodes[0]; x.nodeValue = "中国近代史";
示例说明:- 假设您已将 “books.xml” 加载到xmlDoc中
- 获取第一个 <title> 元素节点的文本节点
- 将文本节点的值更改为“中国近代史”
-
nodeType 属性
nodeType 属性指定节点的类型。nodeType 是只读的。最重要的节点类型是:节点类型 NodeType Element 1 Attribute 2 Text 3 Comment 8 Document 9