プログラミング

Ajax

2006年9月21日

 やっぱり気になるAjax。Windows/Linux/MacOS などの異なるプラットフォームで共通に使えるプログラミング言語と言えば、以前は Java が主流だったのだが、取って代わろうとしているのだろうか?これだけブラウザの機能が向上して、Web アプリでココまで出来るようになっているとなると、やはり使ってみたい。
 ところで、これをアヤックスと呼んでしまうのは、私だけ?どうも、Ajax というと、洗剤のイメージが(www.ajax.com を参照)。

 Ajax のベースは、このオブジェクトにあると言っても良い。
function createXMLHttpRequest(){
  try { return new ActiveXObject("Msxml2.XMLHTTP"); } catch (e) {}
  try { return new ActiveXObject("Microsoft.XMLHTTP"); } catch (e) {}
  try { return new XMLHttpRequest(); } catch (e) {}
  alert ("XMLHttpRequest not supported");
  return null;
}

加えて、次の関数, $(id) も一般的によく使われるらしい。
function $(id) {
  return document.getElementById(id);
}


Hello World! 的なプログラムは、次のようなものかな?




ソースコード
<script type="text/javascript">
function createXMLHttpRequest(){
  try { return new ActiveXObject("Msxml2.XMLHTTP"); } catch (e) {}
  try { return new ActiveXObject("Microsoft.XMLHTTP"); } catch (e) {}
  try { return new XMLHttpRequest(); } catch (e) {}
  alert ("XMLHttpRequest not supported");
  return null;
}
function $(id) {
  return document.getElementById(id);
}
function ajaxstart() {
  var xhr=createXMLHttpRequest();
  xhr.onreadystatechange=function(){
    if (xhr.readyState==4) { // Request is finished
      if (xhr.status==200) {
        var theText=xhr.responseText;
        updateDisplay(theText);
      } else alert("An error occurred.");
    }
  }
  xhr.open("GET","/katsumi/",true);
  xhr.send(null);
}
function updateDisplay(theText){
  $("ajaxResult").innerHTML=theText;
}//*/
</script>
<div id="ajaxResult"><a href="" onclick="ajaxstart();return false;">
ここを押すと、http://www.rad51.net/katsumi/の内容が表示されます
</a></div>

コメント

コメントはありません

コメント送信