XML DOM Knooppuntwaarden wijzigen
De eigenschap nodeValue wordt gebruikt om een knooppuntwaarde te wijzigen.
De methode setAttribute() wordt gebruikt om een attribuutwaarde te wijzigen.
Probeer het zelf - Voorbeelden
De onderstaande voorbeelden gebruiken het XML-bestand books.xml .
In dit voorbeeld wordt de eigenschap nodeValue gebruikt om het tekstknooppunt van het eerste <title>-element in "books.xml" te wijzigen.
In dit voorbeeld wordt de methode setAttribute() gebruikt om de waarde van het kenmerk "category" van het eerste <boek> te wijzigen.
In dit voorbeeld wordt de eigenschap nodeValue gebruikt om de waarde van het kenmerk "category" van het eerste <book> te wijzigen.
De waarde van een element wijzigen
In de DOM is alles een knooppunt. Elementknooppunten hebben geen tekstwaarde.
De tekstwaarde van een elementknooppunt wordt opgeslagen in een onderliggend knooppunt. Dit knooppunt wordt een tekstknooppunt genoemd.
Om de tekstwaarde van een element te wijzigen, moet u de waarde van het tekstknooppunt van het element wijzigen.
De waarde van een tekstknooppunt wijzigen
De eigenschap nodeValue kan worden gebruikt om de waarde van een tekstknooppunt te wijzigen .
Stel dat " books.xml " is geladen in xmlDoc.
Deze code verandert de tekstknooppuntwaarde van het eerste <title>-element:
Voorbeeld
xmlDoc.getElementsByTagName("title")[0].childNodes[0].nodeValue = "new
content"
Voorbeeld uitgelegd:
- Stel dat " books.xml " is geladen in xmlDoc
- Haal het eerste onderliggende knooppunt van het <title>-element op
- Wijzig de knooppuntwaarde in " nieuwe inhoud "
Loop door en verander het tekstknooppunt van alle <title>-elementen:
De waarde van een kenmerk wijzigen
In de DOM zijn attributen knooppunten. In tegenstelling tot elementknooppunten hebben attribuutknooppunten tekstwaarden.
De manier om de waarde van een attribuut te wijzigen, is door de tekstwaarde ervan te wijzigen.
Dit kan worden gedaan met behulp van de methode setAttribute() of door de eigenschap nodeValue van het kenmerkknooppunt in te stellen.
Een kenmerk wijzigen met setAttribute()
De methode setAttribute() wijzigt de waarde van een attribuut .
Als het attribuut niet bestaat, wordt een nieuw attribuut aangemaakt.
Deze code verandert het categoriekenmerk van het <book> element:
Voorbeeld
xmlDoc.getElementsByTagName("book")[0].setAttribute("category","food");
Voorbeeld uitgelegd:
- Stel dat " books.xml " is geladen in xmlDoc
- Verkrijg het eerste <book> element
- Wijzig de waarde van het kenmerk "category" in "food"
Loop door alle <title>-elementen en voeg een nieuw attribuut toe:
Opmerking: als het kenmerk niet bestaat, wordt een nieuw kenmerk gemaakt (met de naam en waarde opgegeven).
Een kenmerk wijzigen met nodeValue
De eigenschap nodeValue is de waarde van een attribuutnode .
Als u de eigenschap value wijzigt, wordt de waarde van het attribuut gewijzigd.
Voorbeeld
xmlDoc.getElementsByTagName("book")[0].getAttributeNode("category").nodeValue = "food";
Voorbeeld uitgelegd:
- Stel dat " books.xml " is geladen in xmlDoc
- Verkrijg het "category" attribuut van het eerste <book> element
- Wijzig de waarde van het kenmerkknooppunt in "food"