XML -Tutorial

XML-HOME XML-Einführung XML-Wie zu verwenden XML-Baum XML-Syntax XML-Elemente XML-Attribute XML-Namespaces XML-Anzeige XML-HttpRequest XML-Parser XML-DOM XML-XPath XML-XSLT XML-XQuery XML-XLink XML-Validator XML-DTD XML-Schema XML-Server XML-Beispiele XML-Quiz XML-Zertifikat

XML-AJAX

AJAX-Einführung AJAX-XMLHttp AJAX-Anfrage AJAX-Antwort AJAX-XML-Datei AJAX-PHP AJAX ASP AJAX-Datenbank AJAX-Anwendungen AJAX-Beispiele

XML-DOM

DOM-Einführung DOM-Knoten DOM-Zugriff DOM-Knoten-Info DOM-Knotenliste DOM-Traversierung DOM-Navigation DOM Get-Werte DOM-Änderungsknoten DOM-Knoten entfernen DOM-Ersetzungsknoten DOM-Knoten erstellen DOM-Knoten hinzufügen DOM-Klonknoten DOM-Beispiele

XPath -Tutorial

XPath-Einführung XPath-Knoten XPath-Syntax XPath-Achsen XPath-Operatoren XPath-Beispiele

XSLT -Tutorial

XSLT-Einführung XSL-Sprachen XSLT-Transformation XSLT <Vorlage> XSLT <Wert von> XSLT <für-jeden> XSLT <sortieren> XSLT <wenn> XSLT <auswählen> XSLT anwenden XSLT auf dem Client XSLT auf dem Server XSLT XML bearbeiten XSLT-Beispiele

XQuery- Tutorial

XQuery-Einführung XQuery-Beispiel XQuery FLWOR XQuery-HTML XQuery-Bedingungen XQuery-Syntax XQuery hinzufügen XQuery-Auswahl XQuery-Funktionen

XML -DTD

DTD-Einführung DTD-Bausteine DTD-Elemente DTD-Attribute DTD-Elemente vs. Attr DTD-Entitäten DTD-Beispiele

XSD- Schema

XSD-Einführung XSD-Anleitung XSD <Schema> XSD-Elemente XSD-Attribute XSD-Einschränkungen

XSD- Komplex

XSD-Elemente XSD leer Nur XSD-Elemente Nur XSD-Text XSD gemischt XSD-Indikatoren XSD <beliebig> XSD <beliebiges Attribut> XSD-Ersetzung XSD-Beispiel

XSD -Daten

XSD-String XSD-Datum XSD Numerisch XSD Sonstiges XSD-Referenz

Webdienste _

XML-Dienste XML-WSDL XML-SOAP XML-RDF XML-RSS

Verweise

DOM-Knotentypen DOM-Knoten DOM-Knotenliste DOM NamedNodeMap DOM-Dokument DOM-Element DOM-Attribut DOM-Text DOM-CDATA DOM-Kommentar DOM-XMLHttpRequest DOM-Parser XSLT-Elemente XSLT/XPath-Funktionen

XML-DOM -Knotenliste


Eine Liste von Knoten wird von der Methode getElementsByTagName() und der Eigenschaft childNodes zurückgegeben.


Probieren Sie es selbst aus - Beispiele

Die folgenden Beispiele verwenden die XML-Datei books.xml .


In diesem Beispiel wird die getElementsByTagName()-Methode verwendet, um den Text aus dem ersten <title>-Element in „books.xml“ abzurufen.


Dieses Beispiel verwendet die Knotenliste und die length-Eigenschaft, um alle <title>-Elemente in „books.xml“ zu durchlaufen.


Dieses Beispiel verwendet eine Attributliste, um das Attribut aus dem ersten <book>-Element in „books.xml“ abzurufen.

×

Header


DOM-Knotenliste

Bei Verwendung von Eigenschaften oder Methoden wie childNodes oder getElementsByTagName() wird ein Knotenlistenobjekt zurückgegeben.

Ein Knotenlistenobjekt stellt eine Liste von Knoten in derselben Reihenfolge wie im XML dar.

Auf Knoten in der Knotenliste wird mit Indexnummern zugegriffen, die bei 0 beginnen.

Das folgende Bild stellt eine Knotenliste der <title>-Elemente in „ books.xml “ dar:

DOM-Knotenliste

Angenommen, "books.xml" wird in die Variable xmlDoc geladen.

Dieses Codefragment gibt eine Knotenliste von Titelelementen in „books.xml“ zurück:

x = xmlDoc.getElementsByTagName("title");

Nach der Ausführung der obigen Anweisung ist x ein Knotenlistenobjekt.

Das folgende Codefragment gibt den Text aus dem ersten <title>-Element in der Knotenliste (x) zurück:

Beispiel

var txt = x[0].childNodes[0].nodeValue;

Nach der Ausführung der obigen Anweisung ist txt = "Alltagsitalienisch".



Länge der Knotenliste

Ein Knotenlistenobjekt hält sich selbst auf dem neuesten Stand. Wird ein Element gelöscht oder hinzugefügt, wird die Liste automatisch aktualisiert.

Die Längeneigenschaft einer Knotenliste ist die Anzahl der Knoten in der Liste.

Dieses Codefragment gibt die Anzahl der <title>-Elemente in „books.xml“ zurück:

x = xmlDoc.getElementsByTagName('title').length;

Nach der Ausführung der obigen Anweisung ist der Wert von x 4.

Die Länge der Knotenliste kann verwendet werden, um alle Elemente der Liste zu durchlaufen.

Dieses Codefragment verwendet die length-Eigenschaft, um die Liste der <title>-Elemente zu durchlaufen:

Beispiel

x = xmlDoc.getElementsByTagName('title');
xLen = x.length;

for (i = 0; i <xLen; i++) {
    txt += x[i].childNodes[0].nodeValue) + " ";
}

Ausgabe:

Everyday Italian
Harry Potter
XQuery Kick Start
Learning XML

Beispiel erklärt:

  1. Angenommen, " books.xml " wird in xmlDoc geladen
  2. Legen Sie die Variable x so fest, dass sie eine Knotenliste aller Titelelemente enthält
  3. Sammeln Sie die Textknotenwerte aus <title>-Elementen

DOM-Attributliste (Named Node Map)

Die Eigenschaft attributes eines Elementknotens gibt eine Liste von Attributknoten zurück.

Dies wird als benannte Knotenzuordnung bezeichnet und ähnelt einer Knotenliste, abgesehen von einigen Unterschieden in Methoden und Eigenschaften.

Eine Attributliste hält sich selbst aktuell. Wenn ein Attribut gelöscht oder hinzugefügt wird, wird die Liste automatisch aktualisiert.

Dieses Codefragment gibt eine Liste von Attributknoten aus dem ersten <book>-Element in „books.xml“ zurück:

x = xmlDoc.getElementsByTagName('book')[0].attributes;

Nach der Ausführung des obigen Codes ist x.length = die Anzahl der Attribute und x.getNamedItem() kann verwendet werden, um einen Attributknoten zurückzugeben.

Dieses Codefragment erhält den Wert des Attributs "Kategorie" und die Anzahl der Attribute eines Buchs:

Beispiel

x = xmlDoc.getElementsByTagName("book")[0].attributes;

txt = x.getNamedItem("category").nodeValue + " " + x.length;

Ausgabe:

cooking 1

Beispiel erklärt:

  1. Angenommen, " books.xml " wird in xmlDoc geladen
  2. Setzen Sie die x-Variable so, dass sie eine Liste aller Attribute des ersten <book>-Elements enthält
  3. Rufen Sie den Wert des Attributs "Kategorie" und die Länge der Attributliste ab