XML DOM - Knoten erstellen
- Vorherige Seite DOM-Nodes ersetzen
- Nächste Seite DOM-Nodes hinzufügen
Beispiel
Das folgende Beispiel verwendet eine XML-Datei books.xml.
Funktion loadXMLDoc()Lokalisiert im externen JavaScript, um XML-Dateien zu laden.
- Erstellung eines Element-Knotens
- Dieses Beispiel verwendet createElement() zur Erstellung eines neuen Element-Knotens und fügt ihn mit appendChild() zu einem Knoten hinzu.
- Erstellung eines Attribute-Knotens durch Verwendung von createAttribute
- Dieses Beispiel verwendet createAttribute() zur Erstellung eines neuen Attribute-Knotens und fügt ihn mit setAttributeNode() zu einem Element hinzu.
- Erstellung eines Attributes durch Verwendung von setAttribute
- Dieses Beispiel verwendet setAttribute() zur Erstellung eines neuen Attributes für ein Element.
- Erstellen Sie Textknoten
- Dieses Beispiel verwendet createTextNode() zur Erstellung eines neuen Textknotens und fügt ihn mit appendChild() zu einem Element hinzu.
- Erstellung eines CDATA Abschnitts
- Dieses Beispiel verwendet createCDATAsection() zur Erstellung eines CDATA Abschnitts und fügt ihn mit appendChild() zu einem Element hinzu.
- Kommentar-Knoten erstellen
- Dieses Beispiel verwendet createComment() zur Erstellung eines comment Knotens und fügt ihn mit appendChild() zu einem Element hinzu.
Erstellen Sie neue Elementknoten
Die Methode createElement() erstellt neue Elementknoten:
xmlDoc=loadXMLDoc("books.xml"); newel=xmlDoc.createElement("edition"); x=xmlDoc.getElementsByTagName("book")[0]; x.appendChild(newel);
Beispiel erklärt:
- Durch die Nutzung loadXMLDoc() Füge "books.xmlLade xmlDoc
- Erstellen Sie einen neuen Elementknoten <edition>
- Fügen Sie diesem ersten <book>-Element diesen Elementknoten hinzu
Durchsuchen und fügen Sie einem Elementknoten alle <book>-Elemente hinzu:TIY
Erstellen Sie neue Eigenschaftsknoten
createAttribute() wird verwendet, um neue Eigenschaftsknoten zu erstellen:
xmlDoc=loadXMLDoc("books.xml"); newatt=xmlDoc.createAttribute("edition"); newatt.nodeValue="first"; x=xmlDoc.getElementsByTagName("title"); x[0].setAttributeNode(newatt);
Beispiel erklärt:
- Durch die Nutzung loadXMLDoc() Füge "books.xmlLade xmlDoc
- Erstellen Sie einen neuen Eigenschaftsknoten "edition"
- Fügen Sie diesem ersten <title>-Element diesen neuen Eigenschaftsknoten hinzu
Durchsuchen Sie alle <title>-Elemente und fügen Sie eine neue Eigenschaftsknoten hinzu:TIY
Anmerkung: Wenn die Eigenschaft bereits existiert, wird sie durch die neue Eigenschaft ersetzt.
Durch Verwendung von setAttribute() Eigenschaften erstellen
Da setAttribute() eine neue Eigenschaft erstellen kann, wenn die Eigenschaft nicht existiert, können wir diese Methode verwenden, um neue Eigenschaften zu erstellen.
xmlDoc=loadXMLDoc("books.xml"); x=xmlDoc.getElementsByTagName('book'); x[0].setAttribute("edition","first");
Beispiel erklärt:
- Durch die Nutzung loadXMLDoc() Füge "books.xmlLade xmlDoc
- Setzen Sie (oder erstellen Sie) für das erste <book>-Element die Eigenschaft mit dem Wert "first"
Durchsuchen Sie alle <title>-Elemente und fügen Sie eine neue Eigenschaft hinzu:TIY
Erstellen Sie Textknoten
Die Methode createTextNode() erstellt neue Textknoten:
xmlDoc=loadXMLDoc("books.xml"); newel=xmlDoc.createElement("edition"); newtext=xmlDoc.createTextNode("first"); newel.appendChild(newtext); x=xmlDoc.getElementsByTagName("book")[0]; x.appendChild(newel);
Beispiel erklärt:
- Durch die Nutzung loadXMLDoc() Füge "books.xmlLade xmlDoc
- Erstellen Sie einen neuen Elementknoten <edition>
- Erstellen Sie einen neuen Textknoten, dessen Text "first" ist
- Fügen Sie diesem Elementknoten einen neuen Textknoten hinzu
- Fügen Sie dem ersten <book>-Element einen neuen Elementknoten hinzu
Fügen Sie einem Elementknoten mit einem Textknoten alle <book>-Elemente hinzu:TIY
Erstellen Sie einen CDATA Section Knoten
Die Methode createCDATASection() erstellt einen neuen CDATA Section Knoten.
xmlDoc=loadXMLDoc("books.xml"); newCDATA=xmlDoc.createCDATASection("Special Offer & Book Sale"); x=xmlDoc.getElementsByTagName("book")[0]; x.appendChild(newCDATA);
Beispiel erklärt:
- Durch die Nutzung loadXMLDoc() Füge "books.xmlLade xmlDoc
- Erstelle eine neue CDATA-Sektion
- Füge diese neue CDATA-Sektion dem ersten <book>-Element hinzu
Durchsuche und füge eine CDATA-Sektion zu allen <book>-Elementen hinzu:TIY
Kommentar-Knoten erstellen
Das createComment()-Verfahren erstellt einen neuen Kommentar-Knoten.
xmlDoc=loadXMLDoc("books.xml"); newComment=xmlDoc.createComment("Revised March 2008"); x=xmlDoc.getElementsByTagName("book")[0]; x.appendChild(newComment);
Beispiel erklärt:
- Durch die Nutzung loadXMLDoc() Füge "books.xmlLade xmlDoc
- Erstelle einen neuen Kommentar-Knoten
- Füge diesen neuen Kommentar-Knoten dem ersten <book>-Element hinzu
Schließe eine comment-Knoten zu allen <book>-Elementen hinzufügen:TIY
- Vorherige Seite DOM-Nodes ersetzen
- Nächste Seite DOM-Nodes hinzufügen