set book1=rootNode.childNodes(1)

book1.ownerDocument 返回Document节点,指向XML文档本身

book1.previousSibling 前一个节点

book1.parentNode 父节点

book1.firstChild 第一个子节点

book1.lastChild 最后一个子节点

book1.childNodes 子节点集合


添加节点


set node=rootNode.childNodes.item(0)

set newNode=myDocument.createElement("publisher")

set rtnNode=node.insertBefore(newNode,node.lastChild)

set textNode=myDocument.createTextNode("人民邮电出版社")

node.childNodes.item(1).appendChild(textNode)


删除节点


set node=root.childNodes.item(0)

set oldNode=node.removeChild(node.childNodes.item(4))


修改节点

set node=root.childNodes.item(0)

node.nodeValue="158"


常用DOM的方法

createAttribute(属性的名字) 创建一个属性节点。然后可以用setAttributeNode方法把该属性设置为某个元素的属性

createCDATASection(内容) 创建一个CDATA节点。

createMessage(内容) 创建一个注释节点,值就是参数内容

createElement(名字) 创建元素节点

createEntityReference(名字) 创建一个实体引用节点,如果被引用的实体是已知的,那么该实体引用节点和相应的实体节点有同样的子节点集

createProcessingInstruction(处理指令的目标部分,处理指令的数据部分) 创建一个具有指定名字和数据的处理指令节点

createTextNode(内容) 创建一个具有指定内容的文本节点


Node的常用属性

attributes

childNodes 子节点的集合

firstChild 第一个子节点

lastChild 最后一个子节点

previousSibling 当前节点的前驱节点

nextSibling 当前节点的后继节点

nodeName 当前节点的名字

nodeType 节点类型

nodeValue 节点的值

parentNodes 父节点


Node方法


appendChild(newChild) 添加到所有子节点的最后,返回添加的节点

cloneNode(boolean deep) 复制当前节点,复制产生的节点没有父节点,返回复制的节点

hasChildNodes 无参数,判断是否有子节点

createElement 创建元素节点

insertBefore(newChild,refChild) 把节点newChild插入到当前节点的子节点refChild之前。返回插入的节点

removeChild(oldChild) 把子节点oldChild删除,并返回oldChild节点。

replaceChild(newChild,oldChild) 替换节点,返回被删除的节点


NodeList

是动态的,对文档的改变会直接反映到相关的NodeList对象中。

属性:


length

Item(0)-Item(nodeList.length-1)


NamedNodeMap

包含的节点是无序的。表示节点和唯一名字的对应关系。

属性length

方法:


getNamedItem(name) 返回给定名称的节点

item(0...)

removeNamedItem(name) 删除给定名称的节点

setNamedItem(name) 把给定节点名的节点添加到当前节点集中,如果改名字节点已经存在,替换