DOM XML - acessando

Neste capítulo, estudaremos como acessar os nós XML DOM, que são considerados unidades de informação do documento XML. A estrutura de nós do XML DOM permite ao desenvolvedor navegar pela árvore em busca de informações específicas e, simultaneamente, acessar as informações.

Nós de acesso

A seguir estão as três maneiras pelas quais você pode acessar os nós -

  • Usando o getElementsByTagName () método

  • Fazendo loop ou atravessando a árvore de nós

  • Navegando na árvore do nó, usando os relacionamentos do nó

getElementsByTagName ()

Este método permite acessar as informações de um nó especificando o nome do nó. Também permite acessar as informações da Lista de Nós e Comprimento da Lista de Nós.

Sintaxe

O método getElementByTagName () tem a seguinte sintaxe -

node.getElementByTagName("tagname");

Onde,

  • - é o nó do documento.

  • tagname - contém o nome do nó cujo valor você deseja obter.

Exemplo

A seguir está um programa simples que ilustra o uso do 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>
  • No exemplo acima, estamos acessando as informações dos nós FirstName , LastName e Employee .

  • xmlDoc.getElementsByTagName ("FirstName") [0] .childNodes [0] .nodeValue; Esta linha acessa o valor do nó filho FirstName usando o método getElementByTagName ().

  • xmlDoc.getElementsByTagName ("Employee") [0] .attributes [0] .nodeValue; Esta linha acessa o valor do atributo do método getElementByTagName () do nó Employee .

Atravessando nós

Isso é abordado no capítulo Traversing de DOM com exemplos.

Navegando pelos nós

Isso é abordado no capítulo Navegação no DOM com exemplos.