XML DOM 替換節(jié)點(diǎn)
replaceChild() 方法替換指定節(jié)點(diǎn)。
nodeValue 屬性替換文本節(jié)點(diǎn)中的文本。
實(shí)例
下面的例子使用 XML 文件 books.xml。
函數(shù) loadXMLDoc(),位于外部 JavaScript 中,用于加載 XML 文件。
- 替換元素節(jié)點(diǎn)
- 本例使用 replaceChild() 來替換第一個(gè) <book> 節(jié)點(diǎn)。
- 替換文本節(jié)點(diǎn)中的數(shù)據(jù)
- 本例使用 nodeValue 屬性來替換文本節(jié)點(diǎn)中的數(shù)據(jù)。
替換元素節(jié)點(diǎn)
replaceChild() 方法用于替換節(jié)點(diǎn)。
下面的代碼片段替換第一個(gè) <book> 元素:
xmlDoc=loadXMLDoc("books.xml"); x=xmlDoc.documentElement; //創(chuàng)建一個(gè) book 元素、一個(gè) title 元素,以及一個(gè) text 節(jié)點(diǎn) newNode=xmlDoc.createElement("book"); newTitle=xmlDoc.createElement("title"); newText=xmlDoc.createTextNode("Hello World"); //向 title 節(jié)點(diǎn)添加文本節(jié)點(diǎn) newTitle.appendChild(newText); //向 book 節(jié)點(diǎn)添加 title 節(jié)點(diǎn) newNode.appendChild(newTitle); y=xmlDoc.getElementsByTagName("book")[0]; //用這個(gè)新節(jié)點(diǎn)替換第一個(gè) book 節(jié)點(diǎn) x.replaceChild(newNode,y);
例子解釋:
- 通過使用 loadXMLDoc() 把 "books.xml" 載入 xmlDoc 中
- 創(chuàng)建一個(gè)新的元素節(jié)點(diǎn) <book>
- 創(chuàng)建一個(gè)新的元素節(jié)點(diǎn) <title>
- 創(chuàng)建一個(gè)新的文本節(jié)點(diǎn),帶有文本 "Hello World"
- 向新元素節(jié)點(diǎn) <title> 追加這個(gè)新文本節(jié)點(diǎn)
- 向新元素節(jié)點(diǎn) <book> 追加這個(gè)新元素節(jié)點(diǎn) <title>
- 用新的 <book> 元素節(jié)點(diǎn)替換第一個(gè) <book> 元素節(jié)點(diǎn)
替換文本節(jié)點(diǎn)中的數(shù)據(jù)
replaceData() 方法用于替換文本節(jié)點(diǎn)中的數(shù)據(jù)。
replaceData() 方法有三個(gè)參數(shù):
- offset - 在何處開始替換字符。Offset 值以 0 開始。
- length - 要替換多少字符
- string - 要插入的字符串
xmlDoc=loadXMLDoc("books.xml"); x=xmlDoc.getElementsByTagName("title")[0].childNodes[0]; x.replaceData(0,8,"hello");
例子解釋:
- 通過使用 loadXMLDoc() 把 "books.xml" 載入 xmlDoc 中
- 獲取第一個(gè) <title> 元素節(jié)點(diǎn)的文本節(jié)點(diǎn)
- 使用 replaceDat 方法把文本節(jié)點(diǎn)的前 8 個(gè)字符替換為 "hello"
使用 nodeValue 屬性
用 nodeValue 屬性來替換文本節(jié)點(diǎn)中數(shù)據(jù)會(huì)更加容易。
下面的代碼片段將用 "Easy Italian" 替換第一個(gè) <title> 元素中的文本節(jié)點(diǎn)值:
xmlDoc=loadXMLDoc("books.xml"); x=xmlDoc.getElementsByTagName("title")[0].childNodes[0]; x.nodeValue="Hello World";
例子解釋:
- 通過使用 loadXMLDoc() 把 "books.xml" 載入 xmlDoc 中
- 獲取第一個(gè) <title> 元素節(jié)點(diǎn)的文本節(jié)點(diǎn)
- 使用 nodeValue 屬性來更改這個(gè)文本節(jié)點(diǎn)的文本
您可以在 改變節(jié)點(diǎn) 這一節(jié)中閱讀更多有關(guān)更改節(jié)點(diǎn)值的內(nèi)容。