XML DOM-Knoten ersetzen

replaceChild() Die Methode ersetzt den angegebenen Knoten.

nodeValue Die Eigenschaft ersetzt den Text im Textknoten.

Ersetzt den Elementknoten

replaceChild() Die Methode wird verwendet, um Knoten zu ersetzen.

Der folgende Codeabschnitt ersetzt das erste <book>-Element:

Beispiel

xmlDoc=loadXMLDoc("books.xml");
x=xmlDoc.documentElement;
// Erstellen eines book-Elements, eines title-Elements und eines Textknotens
newNode=xmlDoc.createElement("book");
newTitle=xmlDoc.createElement("title");
newText=xmlDoc.createTextNode("Ein neues Buch");
// Fügt den Textknoten zum title-Knoten hinzu
newTitle.appendChild(newText);
// Fügt diesen title-Knoten dem book-Knoten hinzu
newNode.appendChild(newTitle);
y=xmlDoc.getElementsByTagName("book")[0];
// Ersetzt den ersten book-Knoten mit dem neuen Knoten
x.replaceChild(newNode,y);

Try it yourself

  1. The example explains: books.xml loaded to xmlDoc in
  2. Erstellt einen neuen Elementknoten <book>
  3. Erstellt einen neuen Elementknoten <title>
  4. Erstellt einen neuen Textknoten, der den Text "Ein neues Buch" enthält
  5. Fügt diesen neuen Textknoten dem neuen Elementknoten <title> hinzu
  6. Fügt diesen neuen Elementknoten <title> dem neuen Elementknoten <book> hinzu
  7. Ersetzt den ersten <book>-Elementknoten durch einen neuen <book>-Elementknoten

Ersetzen von Daten im Textknoten

replaceData() Die Methode wird verwendet, um Daten im Textknoten zu ersetzen.

replaceData() Die Methode hat drei Parameter:

  • offset - Wo mit dem Ersetzen der Zeichen begonnen wird. Der Abstandswert beginnt bei Null
  • length - Die Anzahl der zu ersetzenden Zeichen
  • string - Der zu einfügende String

Beispiel

xmlDoc=loadXMLDoc("books.xml");
x=xmlDoc.getElementsByTagName("title")[0].childNodes[0];
x.replaceData(0,4,"Ein neues Buch");

Try it yourself

  1. The example explains: books.xml loaded to xmlDoc in
  2. Get the text node of the first <title> element node
  3. Use replaceData() Die Methode ersetzt die ersten acht Zeichen des Textknotens durch "Ein neues Buch"

Verwenden Sie die Eigenschaft nodeValue anstelle von

Use nodeValue Eigenschaften sind einfacher zu ersetzen, um Daten im Textknoten zu ändern.

Der folgende Codeabschnitt ersetzt den Textknoten des ersten <title>-Elements durch "Ein neues Buch":

Beispiel

xmlDoc=loadXMLDoc("books.xml");
x=xmlDoc.getElementsByTagName("title")[0].childNodes[0];
x.nodeValue="一本新书";

Try it yourself

  1. The example explains: books.xml loaded to xmlDoc in
  2. Get the text node of the first <title> element node
  3. Use nodeValue Use properties to change the text of a text node

You can read more about changing node values in the chapter 'Change Node'.