XML- tutoriaal

XML TUIS XML Inleiding XML Hoe om te gebruik XML-boom XML-sintaksis XML elemente XML-kenmerke XML Naamruimtes XML vertoon XML HttpRequest XML-ontleder XML DOM XML XPath XML XSLT XML XQuery XML XLink XML valideerder XML DTD XML-skema XML-bediener XML voorbeelde XML Vasvra XML-sertifikaat

XML AJAX

AJAX Inleiding AJAX XMLHttp AJAX-versoek AJAX-reaksie AJAX XML-lêer AJAX PHP AJAX ASP AJAX-databasis AJAX toepassings AJAX voorbeelde

XML DOM

DOM Inleiding DOM nodusse Toegang tot DOM DOM Node Info DOM Node Lys DOM deurkruis DOM Navigeer DOM Kry waardes DOM Verander nodusse DOM Verwyder nodes DOM vervang nodusse DOM Skep nodusse DOM Voeg nodes by DOM Kloon Nodes DOM Voorbeelde

XPath handleiding

XPath Inleiding XPath nodes XPath-sintaksis XPath-asse XPath-operateurs XPath voorbeelde

XSLT- tutoriaal

XSLT Inleiding XSL-tale XSLT-transformasie XSLT <sjabloon> XSLT <waarde-van> XSLT <vir-elk> XSLT <sorteer> XSLT <if> XSLT <kies> XSLT Pas toe XSLT op die kliënt XSLT op die bediener XSLT Wysig XML XSLT voorbeelde

XQuery- tutoriaal

XQuery Inleiding Voorbeeld van XQuery XQuery FLWOR XQuery HTML XQuery-bepalings XQuery-sintaksis XQuery Voeg by XQuery Kies XQuery-funksies

XML DTD

DTD Inleiding DTD Boublokke DTD Elemente DTD-kenmerke DTD Elements vs Attr DTD Entiteite DTD voorbeelde

XSD- skema

XSD Inleiding XSD Hoe om XSD <skema> XSD-elemente XSD-kenmerke XSD-beperkings

XSD -kompleks

XSD-elemente XSD leeg Slegs XSD-elemente Slegs XSD-teks XSD gemeng XSD-aanwysers XSD <enige> XSD <anyAttribute> XSD-vervanging XSD voorbeeld

XSD data

XSD-string XSD datum XSD Numeries XSD Diverse XSD-verwysing

Webdienste _

XML Dienste XML WSDL XML SEEP XML RDF XML RSS

Verwysings

DOM Node Tipes DOM Node DOM NodeLys DOM NamedNodeMap DOM-dokument DOM Element DOM-kenmerk DOM teks DOM CDATA DOM Kommentaar DOM XMLHttpRequest DOM-ontleder XSLT-elemente XSLT/XPath-funksies

XML DOM - Toegang tot nodusse


Met die DOM het u toegang tot elke nodus in 'n XML-dokument.


Probeer dit self - voorbeelde

Die voorbeelde hieronder gebruik die XML-lêer books.xml .


gebruik Gebruik die getElementsByTagName() metode om die derde <title> element in "books.xml" te kry


Gebruik die length-eienskap om deur alle <title>-elemente in "books.xml" te lus


Gebruik die nodeType-eienskap om nodustipe van die wortelelement in "books.xml" te kry.


Gebruik die nodeType eienskap om slegs element nodusse in "books.xml" te verwerk.


Gebruik die nodeType-eienskap en die nextSibling-eienskap om elementnodusse in "books.xml" te verwerk.

×

Opskrif


Toegang tot nodusse

Jy kan op drie maniere toegang tot 'n nodus kry:

1. Deur die getElementsByTagName() metode te gebruik

2. Deur deur die nodesboom te loop (loop).

3. Deur die nodusboom te navigeer deur die nodusverhoudings te gebruik.


Die getElementsByTagName()-metode

getElementsByTagName() gee alle elemente met 'n gespesifiseerde merkernaam terug.

Sintaksis

node.getElementsByTagName("tagname");

Voorbeeld

Die volgende voorbeeld gee alle <title>-elemente onder die x-element terug:

x.getElementsByTagName("title");

Let daarop dat die voorbeeld hierbo slegs <title>-elemente onder die x-knoop terugstuur. Om alle <title>-elemente in die XML-dokument terug te gee, gebruik:

xmlDoc.getElementsByTagName("title");

waar xmlDoc die dokument self (dokumentnodus) is.



DOM Node Lys

Die getElementsByTagName() metode gee 'n noduslys terug. 'n Noduslys is 'n reeks nodusse.

x = xmlDoc.getElementsByTagName("title");

Die <title> elemente in x kan verkry word deur indeksnommer. Om toegang tot die derde <title> te kry, kan jy skryf::

y = x[2];

Let wel: Die indeks begin by 0.

Jy sal meer leer oor noduslyste in 'n latere hoofstuk van hierdie tutoriaal.


DOM Node Lys Lengte

Die lengte-eienskap definieer die lengte van 'n noduslys (die aantal nodusse).

Jy kan deur 'n noduslys loop deur die lengte-eienskap te gebruik:

Voorbeeld

var x = xmlDoc.getElementsByTagName("title");

for (i = 0; i <x.length; i++) {
  // do something for each node
  }

Knooptipes

Die documentElement -eienskap van die XML-dokument is die wortelnodus.

Die nodeName- eienskap van 'n nodus is die naam van die nodus.

Die nodeType- eienskap van 'n nodus is die tipe nodus.

Jy sal meer leer oor die nodus eienskappe in die volgende hoofstuk van hierdie tutoriaal.


Knooppunte deurkruis

Die volgende kode loop deur die kind nodusse, wat ook element nodusse is, van die wortel node:

Voorbeeld

txt = "";
x = xmlDoc.documentElement.childNodes;

for (i = 0; i <x.length; i++) {
  // Process only element nodes (type 1)
  if (x[i].nodeType == 1) {
    txt += x[i].nodeName + "<br>";
  }
}

Voorbeeld verduidelik:

  1. Gestel jy het " books.xml " in xmlDoc gelaai
  2. Kry die kind nodusse van die wortel element (xmlDoc)
  3. Kontroleer die tipe nodus vir elke kindnodus. As die nodus tipe "1" is, is dit 'n element node
  4. Voer die naam van die nodus uit as dit 'n elementnodus is

Navigeer node-verhoudings

Die volgende kode navigeer die nodusboom deur die nodusverhoudings te gebruik:

Voorbeeld

x = xmlDoc.getElementsByTagName("book")[0];
xlen = x.childNodes.length;
y = x.firstChild;

txt = "";
for (i = 0; i <xlen; i++) {
  // Process only element nodes (type 1)
  if (y.nodeType == 1) {
    txt += y.nodeName + "<br>";
  }
  y = y.nextSibling;
}

Voorbeeld verduidelik:

  1. Gestel jy het " books.xml "in xmlDoc gelaai
  2. Kry die kind nodusse van die eerste boek element
  3. Stel die "y" veranderlike om die eerste kind node van die eerste boek element te wees
  4. Vir elke kindernodus (begin met die eerste kindernodus "y"):
  5. Gaan die nodus tipe na. As die nodus tipe "1" is, is dit 'n element node
  6. Voer die naam van die nodus uit as dit 'n elementnodus is
  7. Stel die "y"-veranderlike om die volgende broer of suster te wees, en hardloop weer deur die lus