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-Validierer 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

×

Header

XML-DOM -Tutorial


XML-DOM

DOM node tree

Was ist das DOM?

Das DOM definiert einen Standard für den Zugriff auf und die Bearbeitung von Dokumenten:

„Das Document Object Model (DOM) des W3C ist eine plattform- und sprachneutrale Schnittstelle, die es Programmen und Skripten ermöglicht, dynamisch auf den Inhalt, die Struktur und den Stil eines Dokuments zuzugreifen und diese zu aktualisieren.“

Das HTML-DOM definiert eine Standardmethode für den Zugriff auf und die Bearbeitung von HTML-Dokumenten. Es präsentiert ein HTML-Dokument als Baumstruktur.

Das XML-DOM definiert eine Standardmethode für den Zugriff auf und die Bearbeitung von XML-Dokumenten. Es stellt ein XML-Dokument als Baumstruktur dar.

Das Verständnis des DOM ist ein Muss für jeden, der mit HTML oder XML arbeitet.


Das HTML-DOM

Auf alle HTML-Elemente kann über das HTML-DOM zugegriffen werden.

Dieses Beispiel ändert den Wert eines HTML-Elements mit id="demo":

Beispiel

<h1 id="demo">This is a Heading</h1>

<script>
document.getElementById("demo").innerHTML = "Hello World!";
</script>

Dieses Beispiel ändert den Wert des ersten <h1>-Elements in einem HTML-Dokument:

Beispiel

<h1>This is a Heading</h1>

<h1>This is a Heading</h1>

<script>
document.getElementsByTagName("h1")[0].innerHTML = "Hello World!";
</script>

Hinweis: Auch wenn das HTML-Dokument nur EIN <h1>-Element enthält, müssen Sie trotzdem den Array-Index [0] angeben, da die Methode getElementsByTagName() immer ein Array zurückgibt.

In unserem JavaScript-Tutorial können Sie viel mehr über das HTML-DOM erfahren .



Das XML-DOM

Auf alle XML-Elemente kann über das XML-DOM zugegriffen werden.

Das XML-DOM ist:

  • Ein Standardobjektmodell für XML
  • Eine Standard-Programmierschnittstelle für XML
  • Plattform- und sprachunabhängig
  • Ein W3C-Standard

Mit anderen Worten: Das XML-DOM ist ein Standard dafür, wie XML-Elemente abgerufen, geändert, hinzugefügt oder gelöscht werden.


Holen Sie sich den Wert eines XML-Elements

Dieser Code ruft den Textwert des ersten <title>-Elements in einem XML-Dokument ab:

Beispiel

txt = xmlDoc.getElementsByTagName("title")[0].childNodes[0].nodeValue;

Laden einer XML-Datei

Die in den folgenden Beispielen verwendete XML-Datei ist books.xml .

Dieses Beispiel liest „books.xml“ in xmlDoc ein und ruft den Textwert des ersten <title>-Elements in books.xml ab:

Beispiel

<!DOCTYPE html>
<html>
<body>

<p id="demo"></p>

<script>
var xhttp = new XMLHttpRequest();
xhttp.onreadystatechange = function() {
    if (this.readyState == 4 && this.status == 200) {
    myFunction(this);
    }
};
xhttp.open("GET", "books.xml", true);
xhttp.send();

function myFunction(xml) {
    var xmlDoc = xml.responseXML;
    document.getElementById("demo").innerHTML =
    xmlDoc.getElementsByTagName("title")[0].childNodes[0].nodeValue;
}
</script>

</body>
</html>

Beispiel erklärt

  • xmlDoc – das vom Parser erstellte XML-DOM-Objekt.
  • getElementsByTagName("title")[0] - Ruft das erste <title>-Element ab
  • childNodes[0] – das erste untergeordnete Element des <title>-Elements (der Textknoten)
  • nodeValue - der Wert des Knotens (der Text selbst)

Laden eines XML-Strings

Dieses Beispiel lädt eine Textzeichenfolge in ein XML-DOM-Objekt und extrahiert die Informationen daraus mit JavaScript:

Beispiel

<html>
<body>

<p id="demo"></p>

<script>
var text, parser, xmlDoc;

text = "<bookstore><book>" +
"<title>Everyday Italian</title>" +
"<author>Giada De Laurentiis</author>" +
"<year>2005</year>" +
"</book></bookstore>";

parser = new DOMParser();
xmlDoc = parser.parseFromString(text,"text/xml");

document.getElementById("demo").innerHTML =
xmlDoc.getElementsByTagName("title")[0].childNodes[0].nodeValue;
</script>

</body>
</html>

Programmierschnittstelle

Das DOM modelliert XML als eine Menge von Knotenobjekten. Auf die Knoten kann mit JavaScript oder anderen Programmiersprachen zugegriffen werden. In diesem Tutorial verwenden wir JavaScript.

Die Programmierschnittstelle zum DOM wird durch eine Reihe von Standardeigenschaften und -methoden definiert.

Eigenschaften werden oft als etwas bezeichnet, das ist (dh Knotenname ist "Buch").

Methoden werden oft als etwas, das getan wird, bezeichnet (dh "Buch" löschen).


XML-DOM-Eigenschaften

Dies sind einige typische DOM-Eigenschaften:

  • x.nodeName – der Name von x
  • x.nodeValue - der Wert von x
  • x.parentNode – der übergeordnete Knoten von x
  • x.childNodes – die untergeordneten Knoten von x
  • x.attributes - die Attributknoten von x

Hinweis: In der obigen Liste ist x ein Knotenobjekt.


XML-DOM-Methoden

  • x.getElementsByTagName( name ) – Alle Elemente mit einem angegebenen Tag-Namen abrufen
  • x.appendChild( node ) - fügt einen untergeordneten Knoten in x ein
  • x.removeChild( node ) - entfernt einen untergeordneten Knoten von x

Hinweis: In der obigen Liste ist x ein Knotenobjekt.