Exemplo de XML AJAX

AJAX pode ser usado para comunicação interativa com arquivos XML.

Exemplo de XML AJAX

O exemplo a seguir demonstra como uma página da web pode ler informações de um arquivo XML usando AJAX:

Exemplo

Experimente você mesmo

Explicação do exemplo

Quando o usuário clicar no botão "Obter informações de CD", execute a função loadDoc().

A função loadDoc() cria um objeto XMLHttpRequest, adiciona uma função a ser executada quando o servidor estiver pronto para responder e envia uma solicitação ao servidor.

Quando o servidor estiver pronto para responder, construa a tabela HTML, extraia os nós (fatores) do arquivo XML e, finalmente, atualize o elemento "demo" com a tabela HTML preenchida com dados XML:

LoadXMLDoc()

function loadDoc() {
  var xhttp = new XMLHttpRequest();
   xhttp.onreadystatechange = function() {
    if (this.readyState == 4 && this.status == 200) {
    myFunction(this);
     }
  };
  xhttp.open("GET", "music_list.xml", true);
  xhttp.send();
}
function myFunction(xml) {
  var i;
  var xmlDoc = xml.responseXML;
  var table="<tr><th>Artista</th><th>Canção</th></tr>";
  var x = xmlDoc.getElementsByTagName("TRACK");
  for (i = 0; i <x.length;  i++) { 
    table += "<tr><td>" +
    x[i].getElementsByTagName("ARTIST")[0].childNodes[0].nodeValue  +
    "</td><td>" +
    x[i].getElementsByTagName("TITLE")[0].childNodes[0].nodeValue  +
    "</td></tr>";
  }
   document.getElementById("demo").innerHTML = table;
} 

Arquivo XML

O arquivo XML usado no exemplo anterior é semelhante a este: "music_list.xml".