window.XMLHttpRequest

XMLHttpRequestはサーバーに対してHTTPリクエストを発行するオブジェクト。ブラウザを更新しない。

firefox, operaの場合は、単にXMLHttpRequestクラスのオブジェクトを作るだけだが、IE6はActiveXObjectとして作成しなければならない。

ActiveXObject :
オートメーション オブジェクトへの参照を有効にして返します。
newObj = new ActiveXObject(servername.typename[, location])

ActiveXのXMLHTTPのバージョン: Msxml2.XMLHTTP, Microsoft.XMLHTTP
new ActiveXObject(‘Msxml2.XMLHTTP’);
new ActiveXObject(‘Microsoft.XMLHTTP’);

「readyState」プロパティはサーバからデータを受信するたびに値の更新が行われます。よってこの値を監視することでデータの受信が完了したかどうかを判別できます。
「readyState」プロパティの値が変化すると「onreadystatechange」イベントが発生します。そこで「onreadystatechange」イベント発生する度にチェックする関数を呼び出し、データの受信が完了していたらデータを表示する。
function checkStatus(){
if (xmlHttp.readyState == 4 && xmlHttp.status == 200){
alert(xmlHttp.responseText);
}
}

httpRequest = false;
if(window.XMLHttpRequest){
	httpRequest = new XMLHttpReqeust();
	httpRequest.overrideMimeType('text/xml');
} else if(window.ActiveXObject){
	try {
		httpRequest = new ActiveXObject('Msxml2.XMLHTTP');
	} catch(e){
		httpRequest = new ActiveXObject('Microsoft.XMLHTTP');
	}
}

function request(page){
	if(page == "") return;
	httpRequest.abort();
	httpRequest.open('GET', 'http//webos-goodies.jp/archives/' + page+ '.html', true);
	httpRequest.onreadystatechange = function(){
		if(httpRequest.readyState == 4){
			if(httpRequest.status == 200){
				document.getElementById('page_text').value = httpRequest.responseText;
			}
		}
	}
	httpRequest.send(null);
}