XML DOM Nodes Vervangen
- Previous page DOM delete node
- Next page DOM create node
De replaceChild() methode vervangt de opgegeven knooppunt.
De nodeValue-eigenschap vervangt de tekst in een tekstknooppunt.
Voorbeeld
De volgende voorbeeld gebruikt een XML-bestand books.xml.
Functie loadXMLDoc(),geplaatst in de externe JavaScript, wordt gebruikt om een XML-bestand te laden.
- Vervanging van een elementknooppunt
- In dit voorbeeld wordt replaceChild() gebruikt om het eerste <book> knooppunt te vervangen.
- Vervanging van de gegevens van een tekstknooppunt
- In dit voorbeeld wordt de nodeValue-eigenschap gebruikt om de gegevens van een tekstknooppunt te vervangen.
Vervanging van een elementknooppunt
De replaceChild() methode wordt gebruikt om knooppunten te vervangen.
De volgende codefragment vervangt het eerste <book> element:
xmlDoc=loadXMLDoc("books.xml"); x = xmlDoc.documentElement; //Maak een book-element, een title-element en een tekstknooppunt newNode = xmlDoc.createElement("book"); newTitle = xmlDoc.createElement("title"); newText = xmlDoc.createTextNode("Hello World"); //Voeg een tekstknooppunt toe aan het title-knooppunt newTitle.appendChild(newText); //Voeg een title-knooppunt toe aan het book-knooppunt newNode.appendChild(newTitle); y = xmlDoc.getElementsByTagName("book")[0]; //Vervanging van het eerste book-knooppunt met deze nieuwe knooppunt x.replaceChild(newNode, y);
Example explanation:
- By using loadXMLDoc() Put "books.xml" Load in xmlDoc
- Maak een nieuw elementknooppunt <book>
- Maak een nieuw elementknooppunt <title>
- Maak een nieuwe tekstknooppunt, met de tekst "Hello World"
- Voeg deze nieuwe tekstknooppunt toe aan het nieuwe elementknooppunt <title>
- Voeg deze nieuwe elementknooppunt <title> toe aan het nieuwe elementknooppunt <book>
- Vervanging van het eerste <book> elementknooppunt met een nieuw <book> elementknooppunt
Vervanging van de gegevens van een tekstknooppunt
De replaceData() methode wordt gebruikt om de gegevens van een tekstknooppunt te vervangen.
The replaceData() method has three parameters:
- offset - Where to start replacing characters. The offset value starts at 0.
- length - The number of characters to replace
- string - The string to be inserted
xmlDoc=loadXMLDoc("books.xml"); x=xmlDoc.getElementsByTagName("title")[0].childNodes[0]; x.replaceData(0,8,"hello");
Example explanation:
- By using loadXMLDoc() Put "books.xml" Load in xmlDoc
- Get the text node of the first <title> element
- Use the replaceData method to replace the first 8 characters of the text node with "hello"
Use the nodeValue attribute
It is easier to replace the data in the text node using the nodeValue attribute.
The following code snippet will replace the text node value of the first <title> element with "Easy Italian":
xmlDoc=loadXMLDoc("books.xml"); x=xmlDoc.getElementsByTagName("title")[0].childNodes[0]; x.nodeValue="Hello World";
Example explanation:
- By using loadXMLDoc() Put "books.xml" Load in xmlDoc
- Get the text node of the first <title> element
- Use the nodeValue attribute to change the text of this text node
You can Change node Read more about changing node values in this section.
- Previous page DOM delete node
- Next page DOM create node