DOM XML - Accediendo

En este capítulo estudiaremos cómo acceder a los nodos DOM XML que se consideran las unidades informativas del documento XML. La estructura de nodo del DOM XML permite al desarrollador navegar por el árbol en busca de información específica y acceder simultáneamente a la información.

Accediendo a Nodos

Las siguientes son las tres formas en las que puede acceder a los nodos:

  • Usando el getElementsByTagName () método

  • Al recorrer o atravesar el árbol de nodos

  • Navegando por el árbol de nodos, usando las relaciones de nodos

getElementsByTagName ()

Este método permite acceder a la información de un nodo especificando el nombre del nodo. También permite acceder a la información de la Lista de nodos y la Longitud de la lista de nodos.

Sintaxis

El método getElementByTagName () tiene la siguiente sintaxis:

node.getElementByTagName("tagname");

Dónde,

  • nodo : es el nodo del documento.

  • tagname : contiene el nombre del nodo cuyo valor desea obtener.

Ejemplo

A continuación se muestra un programa simple que ilustra el uso del método 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>
  • En el ejemplo anterior, estamos accediendo a la información de los nodos FirstName , LastName y Employee .

  • xmlDoc.getElementsByTagName ("Nombre") [0] .childNodes [0] .nodeValue; Esta línea accede al valor del nodo hijo FirstName utilizando el método getElementByTagName ().

  • xmlDoc.getElementsByTagName ("Empleado") [0] .attributes [0] .nodeValue; Esta línea accede al valor de atributo del método de nodo Employee getElementByTagName ().

Atravesando nodos

Esto se trata en el capítulo Recorrido de DOM con ejemplos.

Navegando por los nodos

Esto se trata en el capítulo Navegación DOM con ejemplos.