最新的Web開發教程
 

XML DOM節點替換


replaceChild()方法替換指定節點。

nodeValue屬性替換文本節點中的文本。


試一試 - 示例

下面的例子使用XML文件的Books.xml

替換元素節點
本例使用replaceChild()來替換第一個<book>節點。

文本節點中的數據替換
本例使用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. 裝載“ 的books.xml ”載入xmlDoc
  2. 創建一個新的元素節點<book>
  3. 創建一個新的元素節點<title>
  4. 與文本創建一個新的文本節點"A Notebook"
  5. 追加新文本節點的新元素節點<title>
  6. 追加新的元素節點<title>新元素節點<book>
  7. 替換第一個<book>的新元素節點<book>元素節點

替換數據文本節點

replaceData()方法用於文本節點來替換數據。

replaceData()方法有三個參數:

  • offset - 在何處開始替換字符。 偏移值從零開始
  • 長 - 有多少個字符替換
  • 字符串 - 要插入的字符串

xmlDoc=loadXMLDoc("books.xml");

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

x.replaceData(0,8,"Easy");
試一試»

例子解釋:

  1. 裝載“ 的books.xml ”載入xmlDoc
  2. 拿到第一的文本節點<title>元素節點
  3. 使用replaceData方法從文本節點替換前8個字符"Easy"

使用nodeValue屬性相反

這是比較容易使用nodeValue屬性文本節點來替換數據。

下面的代碼片段將在第一替換文本節點值<title>與元素"Easy Italian"

xmlDoc=loadXMLDoc("books.xml");

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

x.nodeValue="Easy Italian";
試一試»

例子解釋:

  1. 裝載“ 的books.xml ”載入xmlDoc
  2. 拿到第一的文本節點<title>元素節點
  3. 使用nodeValue屬性來更改文本節點的文本

你可以閱讀更多有關更改節點值更改節點章