- XML DOM 基础
- XML DOM - 首页
- XML DOM - 概述
- XML DOM - 模型
- XML DOM - 节点
- XML DOM - 节点树
- XML DOM - 方法
- XML DOM - 加载
- XML DOM - 遍历
- XML DOM - 导航
- XML DOM - 访问
- XML DOM 操作
- XML DOM - 获取节点
- XML DOM - 设置节点
- XML DOM - 创建节点
- XML DOM - 添加节点
- XML DOM - 替换节点
- XML DOM - 删除节点
- XML DOM - 克隆节点
- XML DOM 对象
- DOM - 节点对象
- DOM - NodeList 对象
- DOM - NamedNodeMap 对象
- DOM - DOMImplementation
- DOM - DocumentType 对象
- DOM - ProcessingInstruction
- DOM - 实体对象
- DOM - 实体引用对象
- DOM - 符号对象
- DOM - 元素对象
- DOM - 属性对象
- DOM - CDATASection 对象
- DOM - 注释对象
- DOM - XMLHttpRequest 对象
- DOM - DOMException 对象
- XML DOM 有用资源
- XML DOM - 快速指南
- XML DOM - 有用资源
- XML DOM - 讨论
XML DOM - 获取节点
本章将学习如何获取XML DOM对象的节点值。XML文档具有称为节点的信息单元层次结构。节点对象具有属性nodeValue,它返回元素的值。
在以下部分中,我们将讨论:
获取元素的节点值
获取节点的属性值
以下所有示例中使用的node.xml如下:
<Company>
<Employee category = "Technical">
<FirstName>Tanmay</FirstName>
<LastName>Patil</LastName>
<ContactNo>1234567890</ContactNo>
<Email>tanmaypatil@xyz.com</Email>
</Employee>
<Employee category = "Non-Technical">
<FirstName>Taniya</FirstName>
<LastName>Mishra</LastName>
<ContactNo>1234667898</ContactNo>
<Email>taniyamishra@xyz.com</Email>
</Employee>
<Employee category = "Management">
<FirstName>Tanisha</FirstName>
<LastName>Sharma</LastName>
<ContactNo>1234562350</ContactNo>
<Email>tanishasharma@xyz.com</Email>
</Employee>
</Company>
获取节点值
getElementsByTagName()方法返回文档中所有具有给定标签名称的元素的NodeList,按文档顺序排列。
示例
以下示例 (getnode_example.htm) 将XML文档 (node.xml) 解析为XML DOM对象,并提取子节点Firstname (索引为0) 的节点值:
<!DOCTYPE html>
<html>
<body>
<script>
if (window.XMLHttpRequest) {
xmlhttp = new XMLHttpRequest();
} else{
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.open("GET","/dom/node.xml",false);
xmlhttp.send();
xmlDoc = xmlhttp.responseXML;
x = xmlDoc.getElementsByTagName('FirstName')[0]
y = x.childNodes[0];
document.write(y.nodeValue);
</script>
</body>
</html>
执行结果
将此文件保存为服务器路径上的getnode_example.htm(此文件和node.xml应位于服务器上的同一路径)。输出结果中,我们得到节点值为Tanmay。
获取属性值
属性是XML节点元素的一部分。节点元素可以具有多个唯一的属性。属性提供有关XML节点元素的更多信息。更准确地说,它们定义了节点元素的属性。XML属性始终是名称-值对。属性的值称为属性节点。
getAttribute()方法通过元素名称检索属性值。
示例
以下示例 (get_attribute_example.htm) 将XML文档 (node.xml) 解析为XML DOM对象,并提取类别Employee (索引为2) 的属性值:
<!DOCTYPE html>
<html>
<body>
<script>
if (window.XMLHttpRequest) {
xmlhttp = new XMLHttpRequest();
} else {
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.open("GET","/dom/node.xml",false);
xmlhttp.send();
xmlDoc = xmlhttp.responseXML;
x = xmlDoc.getElementsByTagName('Employee')[2];
document.write(x.getAttribute('category'));
</script>
</body>
</html>
执行结果
将此文件保存为服务器路径上的get_attribute_example.htm(此文件和node.xml应位于服务器上的同一路径)。输出结果中,我们得到属性值为Management。
广告