XML DOM - Eigenschaften und Methoden
- Vorherige Seite DOM-Laden
- Nächste Seite DOM-Knotenansicht
Eigenschaften und Methoden definieren die Programmschnittstelle für den XML-DOM.
Beispiel
Der folgende Beispiel verwendet XML-Dateien books.xml
Funktion loadXMLDoc()befindet sich im externen JavaScript, um XML-Dateien zu laden.
Funktion loadXMLString()befindet sich im externen JavaScript, um XML-Strings zu laden.
Programmschnittstelle
DOM simuliert XML als eine Reihe von Knoten-Interfaces. Knoten können über JavaScript oder andere Programmiersprachen erreicht werden. In diesem教程 verwenden wir JavaScript.
Der Programmierschnittstelle des DOM wird durch eine Reihe von standardisierten Eigenschaften und Methoden definiert.
EigenschaftenHäufig wird der Stil "Was ist etwas" verwendet (z.B. Name des Knotens ist "book").
MethodenWird oft in der Form "Eine Sache tun" verwendet (z.B. löschen "book" Knoten).
XML DOM-Attribute
Einige typische DOM-Attribute:
- x.nodeName - Name von x
- x.nodeValue - Wert von x
- x.parentNode - Elterneknoten von x
- x.childNodes - Unter节点 von x
- x.attributes - Attributknoten von x
Anmerkung:In der obigen Liste ist x ein Knotenobjekt.
XML DOM Methoden
- x.getElementsByTagName(name) - Alle Elemente mit dem angegebenen Namenname erhalten
- x.appendChild(node) - Fügen Sie einen Unter节点 zu x hinzu
- x.removeChild(node) - Entfernen Sie den Unter节点 von x
Anmerkung:In der obigen Liste ist x ein Knotenobjekt.
Beispiel
JavaScript-Code, um Text von dem <title>-Element in books.xml zu erhalten:
txt=xmlDoc.getElementsByTagName("title")[0].childNodes[0].nodeValue
Nach Ausführung dieses Satzes wird der Wert, den txt speichert, "Harry Potter".
Erklärung:
- xmlDoc - Von dem Parser erstellter XML DOM
- getElementsByTagName("title")[0] - Erster <title>-Knoten
- childNodes[0] - Erster Unter节点 des <title>-Elements (Textknoten)
- nodeValue - Wert des Knotens (Text selbst)
Im obigen Beispiel ist getElementsByTagName eine Methode, während childNodes und nodeValue Attribute sind.
XML-Datei analysieren - Cross-Browser-Beispiel
Der folgende Codeabschnitt verwendet die Funktion loadXMLDoc, um books.xml Laden Sie den XML-Parser und zeigen Sie die Daten des ersten book an:
xmlDoc=loadXMLDoc("books.xml"); document.write(xmlDoc.getElementsByTagName("title")) [0].childNodes[0].nodeValue); document.write("<br />"); document.write(xmlDoc.getElementsByTagName("author")) [0].childNodes[0].nodeValue); document.write("<br />"); document.write(xmlDoc.getElementsByTagName("year")) [0].childNodes[0].nodeValue);
Ausgabe:
Harry Potter J K. Rowling 2005
Im obigen Beispiel verwenden wir childNodes[0] für jeden Textknoten, auch wenn jeder Element nur einen Textknoten hat. Dies liegt daran, dass die Methode getElementsByTagName() immer ein Array zurückgibt.
XML-Zeichenkette analysieren - Cross-Browser-Beispiel
Der folgende Code lädt und parset eine XML-Zeichenkette:
Der folgende Codeabschnitt verwendet die Funktion loadXMLString, um books.xml Laden Sie den XML-Parser und zeigen Sie die Daten des ersten 'book' an:
text="<bookstore>" text=text+"<book>"; text=text+"<title>Harry Potter</title>"; text=text+"<author>J K. Rowling</author>"; text=text+"<year>2005</year>"; text=text+"</book>"; text=text+"</bookstore>"; xmlDoc=loadXMLString(text); document.write(xmlDoc.getElementsByTagName("title")) [0].childNodes[0].nodeValue); document.write("<br />"); document.write(xmlDoc.getElementsByTagName("author")) [0].childNodes[0].nodeValue); document.write("<br />"); document.write(xmlDoc.getElementsByTagName("year")) [0].childNodes[0].nodeValue);
Ausgabe:
Harry Potter J K. Rowling 2005
- Vorherige Seite DOM-Laden
- Nächste Seite DOM-Knotenansicht