XML DOM ersätta noder

replaceChild() Metoden ersätter den specificerade noden.

nodeValue Egenskapen ersätter texten i textnoden.

Ersätt elementnod

replaceChild() Metoden används för att ersätta noder.

Följande kodsnutt ersätter det första <book>-elementet:

Exempel

xmlDoc=loadXMLDoc("books.xml");
x=xmlDoc.documentElement;
// Skapa en book-element, title-element och en textnod
newNode=xmlDoc.createElement("book");
newTitle=xmlDoc.createElement("title");
newText=xmlDoc.createTextNode("En ny bok");
// Lägg till textnoden till title-noden
newTitle.appendChild(newText);
// Lägg till denna title-nod till book-noden
newNode.appendChild(newTitle);
y=xmlDoc.getElementsByTagName("book")[0];
// Ersätt den första book-noden med en ny nod
x.replaceChild(newNode,y);

亲自试一试

例子解释:

  1. books.xml 加载到 xmlDoc
  2. Skapa en ny elementnod <book>
  3. Skapa en ny elementnod <title>
  4. Skapa en ny textnod som innehåller texten "En ny bok"
  5. Lägg till denna nya textnod till den nya elementnoden <title>
  6. Lägg till denna nya elementnod <title> till den nya elementnoden <book>
  7. Ersätt den första <book>-elementnoden med en ny <book>-elementnod

Ersätt data i textnoden

replaceData() Metoden används för att ersätta data i textnoden.

replaceData() Metoden har tre parametrar:

  • offset - från vilket tecken ersättningen ska börja. Offset-värdet börjar vid noll
  • length - antalet tecken som ska ersättas
  • string - den string som ska infogas

Exempel

xmlDoc=loadXMLDoc("books.xml");
x=xmlDoc.getElementsByTagName("title")[0].childNodes[0];
x.replaceData(0,4,"En ny bok");

亲自试一试

例子解释:

  1. books.xml 加载到 xmlDoc
  2. 获取第一个 <title> 元素节点的文本节点
  3. 使用 replaceData() Metoden ersätter de första åtta tecknen i textnoden med "En ny bok"

Använd egenskapen nodeValue istället

使用 nodeValue Egenskaper är lättare att ersätta data i textnoden.

Följande kodsnutt kommer att ersätta textnoden i det första <title>-elementet med "En ny bok":

Exempel

xmlDoc=loadXMLDoc("books.xml");
x=xmlDoc.getElementsByTagName("title")[0].childNodes[0];
x.nodeValue="en en ny bok";

亲自试一试

例子解释:

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

您可以在 改变节点 这一章中阅读有关更改节点值的更多内容。