导读 replaceChild() 方法替换指定节点。nodeValue 属性替换文本节点中的文本。

替换元素节点

replaceChild() 方法用于替换节点。

下面的代码片段替换第一个 <book> 元素:

实例

xmlDoc=loadXMLDoc("books.xml");
 
x=xmlDoc.documentElement;
 
// 创建新的 book 元素, title 元素及 node 节点
newNode=xmlDoc.createElement("book");
newTitle=xmlDoc.createElement("title");
newText=xmlDoc.createTextNode("A Notebook");
 
// 将 text 节点添加到 title 节点中
newTitle.appendChild(newText);
// 将 title 节点添加到  book 节点中
newNode.appendChild(newTitle);
 
y=xmlDoc.getElementsByTagName("book")[0]
// 使用新节点替换第一个 book 节点
x.replaceChild(newNode,y);

实例解释

  1. 使用 loadXMLDoc() 把 "books.xml" 载入 xmlDoc 中
  2. 创建一个新的元素节点 <book>
  3. 创建一个新的元素节点 <title>
  4. 创建一个新的文本节点,带有文本 "A Notebook"
  5. 向新元素节点 <title> 追加这个新文本节点
  6. 向新元素节点 <book> 追加这个新元素节点 XML DOM 替换节点概述 | 《Linux就该这么学》
  7. 把第一个 <book> 元素节点替换为新的 <book> 元素节点
替换文本节点中的数据

replaceData() 方法用于替换文本节点中的数据。

replaceData() 方法有三个参数:

  1. offset - 在何处开始替换字符。offset 值以 0 开始。
  2. length - 要替换多少字符
  3. string - 要插入的字符串

实例

xmlDoc=loadXMLDoc("books.xml");
x=xmlDoc.getElementsByTagName("title")[0].childNodes[0];
x.replaceData(0,8,"Easy");

实例解释

  1. 使用 loadXMLDoc() 把 "books.xml" 载入 xmlDoc 中
  2. 获取第一个 <title> 元素节点的文本节点
  3. 使用 replaceData 方法把文本节点的前 8 个字符替换为 "Easy"
使用 nodeValue 属性代替

用 nodeValue 属性来替换文本节点中数据会更加容易。

下面的代码片段将用 "Easy Italian" 替换第一个 &lt;title> 元素中的文本节点值:

实例

xmlDoc=loadXMLDoc("books.xml");
x=xmlDoc.getElementsByTagName("title")[0].childNodes[0];
x.nodeValue="Easy Italian";

实例解释

  1. 使用 loadXMLDoc() 把 "books.xml" 载入 xmlDoc 中
  2. 获取第一个 <title> 元素节点的文本节点
  3. 使用 nodeValue 属性来更改这个文本节点的文本

原文来自:

本文地址://gulass.cn/dom-replacement-nodes.html编辑:王艳敏,审核员:逄增宝

Linux大全:

Linux系统大全:

红帽认证RHCE考试心得: