- 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>[email protected]</Email> </Employee> <Employee category = "Non-Technical"> <FirstName>Taniya</FirstName> <LastName>Mishra</LastName> <ContactNo>1234667898</ContactNo> <Email>[email protected]</Email> </Employee> <Employee category = "Management"> <FirstName>Tanisha</FirstName> <LastName>Sharma</LastName> <ContactNo>1234562350</ContactNo> <Email>[email protected]</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。
广告