XML 入门二

假设对象 doc 已加载了以 booklist.xml 为内容的 XML 数据岛或者外部 XML 文档,通过 docdocumentElement 便可以取得对根元素的引用:

Set rootNode = doc.documentElement

此时,显然rootNode指向booklist根元素。

一旦建立了对DOM树中某个节点(例如根节点)的引用后,就可以根据节点间的依属关系调用适当的方法或属性进行遍历。在上例中,我们可以简单地取得rootNode的第二个子节点,即第二个book元素(自然辩证法概论)的引用:

Set bookNode = rootNode.childNodes(1)

这里,childNodesNode对象的一个属性数组(下标从0开始)。下面给出由当前节点访问其它相关节点的方法(设当前节点为bookNode)

属性

   功能描述

    示例中的结果

    bookNode.ownerDocument

返回Document节点

Booklist.XML文档自身

   bookNode.previousSibling

返回当前节点的前一个兄弟节点

第一个<book>元素节点,即<面向对象软件构造>

bookNode. nextSibling

返回当前节点的下一个兄弟节点

第三个<book>元素节点,即<软件工程>

bookNode.parentNode

返回当前节点的父节点

根元素节点,<booklist>

bookNode.firstChild

bookNode.lastChild

返回当前节点的第一个(最后一个)子节点

第一个子节点:<title>

最后一个子节点:<author>

bookNode. ChildNodes

返回当前节点的所有子节点集合

包含<title>,<isbn>,等五个子节点的子节点集

            [3.6]. DOM节点的部分属性列表

获得节点的引用后,就可以读取节点的相关信息:

1). 节点类型:bookNode.nodeType,本例为1Document对象类型为9,元素类型为1,属性类型为2

2). 节点名称:bookNode.nodeName,本例为book

3). 节点值:  bookNode.nodeValue,本例为null。对于Attr节点,返回的是属性值,而对于Element节点,返回的是null

此外,DOM对象还提供大量方法支持对XML树的查找和修改,比如:

1). Document 对象有createElement(创建元素)、createTextNode(创建文本节点)、getElementsByTagName(找出与标签匹配的元素集)等方法。如,上例中,如果调用doc.getElementsByTagName(“book”)将返回全部三个<book>元素节点。

2). Element 对象有getAttribute(取得属性)、setAttribute(设置属性)、removeAttribute(删除属性)、removeChild(删除子节点)、replaceChild(替换子节点)等方法。

3). Node 对象有selectNodes方法,可以支持条件查询。如本例中,rootNode.selectNodes("//book[price < 60]")将返回所有书价小于60<book>节点。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值