XML DOM Knooppunten vervangen
De methode ReplaceChild() vervangt een opgegeven knooppunt.
De eigenschap nodeValue vervangt tekst in een tekstknooppunt.
Probeer het zelf - Voorbeelden
De onderstaande voorbeelden gebruiken het XML-bestand books.xml .
In dit voorbeeld wordt ReplaceChild() gebruikt om het eerste <book>-knooppunt te vervangen.
tekstknooppunt vervangen In dit voorbeeld wordt de eigenschap nodeValue gebruikt om gegevens in een tekstknooppunt te vervangen.
Een elementknooppunt vervangen
De methode ReplaceChild() wordt gebruikt om een knooppunt te vervangen.
Het volgende codefragment vervangt het eerste <book> element:
Voorbeeld
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);
Voorbeeld uitgelegd:
- Laad " books.xml " in xmlDoc
- Maak een nieuw elementknooppunt <boek>
- Maak een nieuw elementknooppunt <title>
- Maak een nieuw tekstknooppunt met de tekst "A Notebook"
- Voeg het nieuwe tekstknooppunt toe aan het nieuwe elementknooppunt <title>
- Voeg het nieuwe elementknooppunt <title> toe aan het nieuwe elementknooppunt <boek>
- Vervang de eerste <book> element node door de nieuwe <book> element node
Gegevens vervangen in een tekstknooppunt
De methode ReplaceData() wordt gebruikt om gegevens in een tekstknooppunt te vervangen.
De methode ReplaceData() heeft drie parameters:
- offset - Waar te beginnen met het vervangen van tekens. Offsetwaarde begint bij nul
- lengte - Hoeveel tekens vervangen
- string - De string die moet worden ingevoegd
Voorbeeld
xmlDoc=loadXMLDoc("books.xml");
x=xmlDoc.getElementsByTagName("title")[0].childNodes[0];
x.replaceData(0,8,"Easy");
Voorbeeld uitgelegd:
- Laad " books.xml " in xmlDoc
- Haal het tekstknooppunt van het eerste <title> elementknooppunt op
- Gebruik de methode ReplaceData om de acht eerste tekens van het tekstknooppunt te vervangen door "Easy"
Gebruik in plaats daarvan de eigenschap nodeValue
Het is gemakkelijker om de gegevens in een tekstknooppunt te vervangen met de eigenschap nodeValue.
Het volgende codefragment vervangt de tekstknooppuntwaarde in het eerste <title>-element door "Easy Italian":
Voorbeeld
xmlDoc=loadXMLDoc("books.xml");
x=xmlDoc.getElementsByTagName("title")[0].childNodes[0];
x.nodeValue="Easy Italian";
Voorbeeld uitgelegd:
- Laad " books.xml " in xmlDoc
- Haal het tekstknooppunt van het eerste <title> elementknooppunt op
- Gebruik de eigenschap nodeValue om de tekst van het tekstknooppunt te wijzigen
U kunt meer lezen over het wijzigen van knooppuntwaarden in het hoofdstuk Knooppunt wijzigen .