XML DOM - Knotenwert ändern
- Vorherige Seite DOM Knoten abrufen
- Nächste Seite DOM Knoten löschen
Die Eigenschaft nodeValue wird verwendet, um den Wert eines Knotens zu ändern.
Die Methode setAttribute() wird verwendet, um den Wert der Eigenschaft zu ändern.
Beispiel
Der folgende Beispiel verwendet eine XML-Datei books.xml.
Funktion loadXMLDoc(), liegt im externen JavaScript und wird verwendet, um XML-Dateien zu laden.
- Änderung des Textknotens eines Elements
- In diesem Beispiel wird das Attribut nodeValue verwendet, um den Textknoten des ersten <title>-Elements in "books.xml" zu ändern.
- Durch die Verwendung von setAttribute den Wert der Eigenschaft ändern
- In diesem Beispiel wird die Methode setAttribute() verwendet, um den Wert des Attributes category des ersten <book> zu ändern.
- Durch die Verwendung von nodeValue den Wert der Eigenschaft ändern
- In diesem Beispiel wird das Attribut category des ersten <book> mit dem Attribut nodeValue geändert.
Änderung des Wertes eines Elements
In der DOM ist jeder Bestand ein Knoten. Elementknoten haben keine Textwerte.
Der Text eines Elementknotens wird in den Unter-knoten gespeichert. Dieser Knoten wird als Textknoten bezeichnet.
Die Methode zur Änderung des Textes eines Elements ist die Änderung des Wertes dieses Unter-knotens (Textknoten).
Änderung des Wertes eines Textknotens
Die nodeValue-Eigenschaft kann verwendet werden, um den Wert eines Textknotens zu ändern.
Der folgende Codeabschnitt ändert den Wert des Textknotens des ersten <title>-Elements:
xmlDoc=loadXMLDoc("books.xml"); x=xmlDoc.getElementsByTagName("title")[0].childNodes[0]; x.nodeValue="Hello World";
Beispiel erklärt:
- Durch die Verwendung loadXMLDoc() " wirdbooks.xml" wird in xmlDoc geladen
- Den Textknoten des ersten <title>-Elements erhalten
- Den Wert dieses Textknotens auf "Hello World" ändern
Durchsuchen und Ändern aller Textknoten der <title>-Elemente:TIY
Änderung des Wertes der Eigenschaft
In der DOM sind Eigenschaften auch Knoten. Im Gegensatz zu Elementknoten haben Attributknoten Textwerte.
Die Methode zur Änderung des Wertes einer Eigenschaft ist die Änderung des Textwerts.
Diese Aufgabe kann durch die Verwendung der Methode setAttribute() oder des Attributknotenattributs nodeValue erfüllt werden.
Durch die Verwendung von setAttribute() kann die Eigenschaft geändert werden
Die setAttribute() Methode setzt den Wert eines bestehenden Attributes fest oder erstellt ein neues Attribut.
Das folgende Code ändert die category-Eigenschaft des <book>-Elements:
xmlDoc=loadXMLDoc("books.xml"); x=xmlDoc.getElementsByTagName('book'); x[0].setAttribute("category","child");
Beispiel erklärt:
- Durch die Verwendung loadXMLDoc() " wirdbooks.xml" wird in xmlDoc geladen
- Den ersten <book>-Element abrufen
- Den Wert des "category"-Attributs auf "child" ändern
Durchsuche alle <title> und füge eine neue Eigenschaft hinzu:TIY
Anmerkung:Falls der Attributknoten nicht existiert, wird ein neuer Attributknoten (mit dem angegebenen Namen und Wert) erstellt.
Durch die Verwendung von nodeValue wird das Attribut geändert
Die nodeValue-Eigenschaft kann verwendet werden, um den Wert eines Attributknotens zu ändern:
xmlDoc=loadXMLDoc("books.xml"); x=xmlDoc.getElementsByTagName("book")[0]; y=x.getAttributeNode("category"); y.nodeValue="child";
Beispiel erklärt:
- Durch die Verwendung loadXMLDoc() " wirdbooks.xml" wird in xmlDoc geladen
- Den "category"-Attribut des ersten <book>-Elements abrufen
- Den Wert des Attributknotens auf "child" ändern
- Vorherige Seite DOM Knoten abrufen
- Nächste Seite DOM Knoten löschen