XML DOM - Accesso

In questo capitolo studieremo come accedere ai nodi XML DOM che sono considerati come le unità informative del documento XML. La struttura a nodi del DOM XML consente allo sviluppatore di navigare nell'albero alla ricerca di informazioni specifiche e di accedere contemporaneamente alle informazioni.

Accesso ai nodi

Di seguito sono riportati i tre modi in cui è possibile accedere ai nodi:

  • Utilizzando il getElementsByTagName () metodo

  • Facendo un ciclo o attraversando l'albero dei nodi

  • Navigando nella struttura ad albero dei nodi, utilizzando le relazioni tra i nodi

getElementsByTagName ()

Questo metodo consente di accedere alle informazioni di un nodo specificando il nome del nodo. Consente inoltre di accedere alle informazioni dell'elenco dei nodi e della lunghezza dell'elenco dei nodi.

Sintassi

Il metodo getElementByTagName () ha la seguente sintassi:

node.getElementByTagName("tagname");

Dove,

  • nodo - è il nodo del documento.

  • tagname - contiene il nome del nodo di cui desideri ottenere il valore.

Esempio

Di seguito è riportato un semplice programma che illustra l'utilizzo del metodo getElementByTagName.

<!DOCTYPE html>
<html>
   <body>
      <div>
         <b>FirstName:</b> <span id = "FirstName"></span><br>
         <b>LastName:</b> <span id = "LastName"></span><br>
         <b>Category:</b> <span id = "Employee"></span><br>
      </div>
      <script>
         if (window.XMLHttpRequest) {// code for IE7+, Firefox, Chrome, Opera, Safari
            xmlhttp = new XMLHttpRequest();
         } else {// code for IE6, IE5
            xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
         }
         xmlhttp.open("GET","/dom/node.xml",false);
         xmlhttp.send();
         xmlDoc = xmlhttp.responseXML;

         document.getElementById("FirstName").innerHTML = 
         xmlDoc.getElementsByTagName("FirstName")[0].childNodes[0].nodeValue;
         document.getElementById("LastName").innerHTML = 
         xmlDoc.getElementsByTagName("LastName")[0].childNodes[0].nodeValue;
         document.getElementById("Employee").innerHTML = 
         xmlDoc.getElementsByTagName("Employee")[0].attributes[0].nodeValue;
      </script>
   </body>
</html>
  • Nell'esempio precedente, stiamo accedendo alle informazioni dei nodi FirstName , LastName e Employee .

  • xmlDoc.getElementsByTagName ("FirstName") [0] .childNodes [0] .nodeValue; Questa riga accede al valore per il nodo figlio FirstName utilizzando il metodo getElementByTagName ().

  • xmlDoc.getElementsByTagName ("Employee") [0] .attributes [0] .nodeValue; Questa riga accede al valore dell'attributo del metodo Employee getElementByTagName () del nodo .

Attraversare i nodi

Questo è trattato nel capitolo Attraversamento DOM con esempi.

Navigazione tra i nodi

Questo è trattato nel capitolo Navigazione DOM con esempi.