Przykład XML AJAX

AJAX może być używany do interaktywnej komunikacji z plikiem XML.

Przykład XML AJAX

Poniższy przykład pokazuje, jak strona internetowa może czytać informacje z pliku XML za pomocą AJAX:

Przykład

Spróbuj sam

Przykład wyjaśnienia

Kiedy użytkownik kliknie przycisk "Pobierz informacje o CD", wykonuje się funkcja loadDoc().

Funkcja loadDoc() tworzy obiekt XMLHttpRequest, dodaje funkcję do wykonania, gdy serwer jest gotowy do odpowiedzi, i wysyła żądanie do serwera.

Gdy serwer jest gotowy do odpowiedzi, tworzy się tabelę HTML, pobiera węzły (faktory) z pliku XML, a następnie aktualizuje element "demo" tabelą HTML wypełnioną danymi 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>Artysta</th><th>Utwór</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;
} 

Plik XML

Plik XML użyty w poprzednim przykładzie wygląda podobnie do tego: "music_list.xml"。