AJAXベース---XmlHttpRequestを使用


AJAXについては、ブラウザがメインスレッドで継続して実行されている場合、妻のXmlHttpRequestにサーバにリソースを要求し、ブラウザに渡してリソースを表示してもらうことを理解しています.
AJAXを使う最も基本的な方法は4つのステップに分かれています
1.非同期オブジェクトcreateXmlHttp()の作成
2.要求方式及びパラメータopenの設定
2.1対応要求方式のメッセージヘッダの設定
GET       xhr.setRequestHeader("If-Modified-Since", "0");
POST    xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
3.コールバック関数の設定
4.4.非同期オブジェクトをサーバsendに送信する
	//                     
	function createXmlHttp() {
    xhobj = false;
    try {
        xhobj = new ActiveXObject("Msxml2.XMLHTTP"); //lemsxml3.0
    }
    catch (e) {
        try {
            xhobj = new ActiveXObject("Microsoft.XMLHTTP"); //lemsxml2.6
        }
        catch (e2) {
            xhobj = false;
        }
    }
    if (!xhobj && typeof XMLHttpRequest != 'undefined') {//Firefox,Opera 8.0+,Safari,     
        xhobj = new XMLHttpRequest();
    }
    return xhobj;
}    

上記の方法で非同期オブジェクトを作成します.
 <script src="common/common.js" type="text/javascript"></script>
    <script type="text/javascript">
        var xhr = false;
        //  Id     dom  
        function gel(Id) { return document.getElementById(Id); }
        function GetDate() {
            //1.      
            xhr = createXmlHttp();
            //2.      ,  1            ,   GET POST
            //  2,          ,  3     (false)    (true)    
            xhr.open("GET", "XmlRequst.ashx", true);
            //2.1          ,       ,             ,     
            //  ,            ,       GET,         ,          
            //GET         
            xhr.setRequestHeader("If-Modified-Since", "0");
            //Post                
            //xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
            //3.      (                              )
            xhr.onreadystatechange = function() {
                //                       
                //readyState   5  0-4,          5   ,           
                //onreadystatechange     
                if (xhr.readyState == 4) {
                    //status                        
                    //              200,          
                    if (xhr.status == 200) {
                        //responseText                          
                        // alert(xhr.responseText);
                        document.getElementById("msgDiv").innerHTML = xhr.responseText;
                    }
                    else {
                        alert("    ---      !");
                    }
                }
            }
            //4.          
            xhr.send(null);
            //xhr.send("txtName=tavb&txtPWD=123");//  post           。
        }
    </script>
    <div id="msgDiv">
    
    </div>
    <input type="submit" value="   " onclick="GetDate()" />