目录

XML DOM 替换节点


ReplaceChild() 方法替换指定的节点。

nodeValue 属性替换文本节点中的文本。


替换元素节点

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

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

示例

xmlDoc=loadXMLDoc("books.xml");

x=xmlDoc.documentElement;

//create a book element, title element and a text node
newNode=xmlDoc.createElement("book");
newTitle=xmlDoc.createElement("title");
newText=xmlDoc.createTextNode("A Notebook");

//add the text node to the title node,
newTitle.appendChild(newText);
//add the title node to the book node
newNode.appendChild(newTitle);

y=xmlDoc.getElementsByTagName("book")[0]
//replace the first book node with the new node
x.replaceChild(newNode,y);
亲自试一试 »

示例解释:

  1. 加载书籍.xml进入 xmlDoc
  2. 创建新元素节点<book>
  3. 创建一个新的元素节点<title>
  4. 使用文本 "A Notebook" 创建一个新的文本节点
  5. 将新文本节点追加到新元素节点 <title>
  6. 将新元素节点<title>追加到新元素节点<book>
  7. 将第一个 <book> 元素节点替换为新的 <book> 元素节点


替换文本节点中的数据

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

ReplaceData() 方法有三个参数:

  • offset - 从哪里开始替换字符。偏移值从零开始
  • length - 要替换​​的字符数
  • string - 要插入的字符串

示例

xmlDoc=loadXMLDoc("books.xml");

x=xmlDoc.getElementsByTagName("title")[0].childNodes[0];

x.replaceData(0,8,"Easy");
亲自试一试 »

示例解释:

  1. 加载书籍.xml进入 xmlDoc
  2. 获取第一个<title>元素节点的文本节点
  3. 使用replaceData方法将文本节点的前八个字符替换为"Easy"

使用 nodeValue 属性代替

使用 nodeValue 属性替换文本节点中的数据更容易。

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

示例

xmlDoc=loadXMLDoc("books.xml");

x=xmlDoc.getElementsByTagName("title")[0].childNodes[0];

x.nodeValue="Easy Italian";
亲自试一试 »

示例解释:

  1. 加载书籍.xml进入 xmlDoc
  2. 获取第一个<title>元素节点的文本节点
  3. 使用nodeValue属性更改文本节点的文本

您可以阅读有关更改节点值的更多信息更改节点章节