AJAX XML の例

❮ 前章へ 次章へ ❯

AJAX は、XML ファイルとの双方向通信に使用することができます。


AJAX XML の例

次の例は、AJAX により、Web ページがどのように XML ファイルから情報を取出すことができるかを示しています:

Try it Yourself »


例の説明

ユーザが、上記 "CD 情報取得" ボタンをクリックすると、loadXMLDoc() 関数が実行されます。

loadXMLDoc() 関数は、XMLHttpRequest オブジェクトを作成し、サーバ・レスポンスが準備完了のときに実行される関数を追加し、 サーバにリクエストを送信します。

サーバ・レスポンスが処理完了したときに、HTMLテーブルを作成し、ノード(要素)を XML ファイルから取り出し、 最終的に、XML データを埋めた HTML テーブルにより要素 "demo" プを更新します:

LoadXMLDoc()

function loadDoc() {
  var xhttp = new XMLHttpRequest();
  xhttp.onreadystatechange = function() {
    if (this.readyState == 4 && this.status == 200) {
    myFunction(this);
    }
  };
  xhttp.open("GET", "cd_catalog.xml", true);
  xhttp.send();
}
function myFunction(xml) {
  var i;
  var xmlDoc = xml.responseXML;
  var table="<tr><th>Artist</th><th>Title</th></tr>";
  var x = xmlDoc.getElementsByTagName("CD");
  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;
}

<

XML ファイル

上記例で使用したXML ファイルは、次のファイルです:"cd_catalog.xml"。


❮ 前章へ 次章へ ❯