Przykład XML AJAX
AJAX może służyć do interaktywnej komunikacji z plikiem XML.
Przykład XML AJAX
Poniższy przykład zademonstruje, jak strona internetowa może pobierać informacje z pliku XML za pomocą AJAX:
Przykład
Przykład wyjaśniony
Gdy użytkownik kliknie przycisk „Pobierz informacje o płycie CD” powyżej, loadDoc()
funkcja zostanie uruchomiona.
Funkcja loadDoc()
tworzy XMLHttpRequest
obiekt, dodaje funkcję, która ma zostać wykonana, gdy odpowiedź serwera jest gotowa i wysyła żądanie do serwera.
Gdy odpowiedź serwera jest gotowa, budowana jest tabela HTML, węzły (elementy) są wyodrębniane z pliku XML, a na końcu aktualizuje element „demo” o tabelę HTML wypełnioną danymi XML:
function loadDoc() {
const xhttp = new XMLHttpRequest();
xhttp.onload = function() {myFunction(this);}
xhttp.open("GET", "cd_catalog.xml");
xhttp.send();
}
function myFunction(xml) {
const xmlDoc = xml.responseXML;
const x = xmlDoc.getElementsByTagName("CD");
let table="<tr><th>Artist</th><th>Title</th></tr>";
for (let 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 powyższym przykładzie wygląda tak: " cd_catalog.xml ".