AJAX XMLHttp

var xmlHttp;

function createXMLHttpRequest()  

{  

   try  

   {  

       xmlHttp=new ActiveXObject('Msxm12.XMLHTTP');//根據瀏覽器創建xmlHttp對象

   }  

   catch(e)  

   {  

      try  

      {  

          xmlHttp=new ActiveXObject('Microsoft.XMLHTTP');//根據瀏覽器創建xmlHttp對象

      }  

       catch(e)  

       {

           try  

           {  

             xmlHttp=new XmlHttpRequest(); //根據瀏覽器創建xmlHttp對象

           }  

           catch(e)

           {  

           }  

       }  

   }  

   return xmlHttp;

}

 

function startRequestByDiv(actionname,divname,returnfuction,classname,metod)

{

    var url = document.forms[actionname].action;

    for(i=0;i<document.getElementById(divname).children.length;i++){

        var id = document.getElementById(divname).children[i].name;

        var val = document.getElementById(divname).children[i].value;   

        if((//?.{1,}/=.{1,}/).test(url))

        {

            url=url+"&" + id + "=" + val;

        }

        else

        {

            url=url+"?" + id + "=" + val;

        }

    }

    url += "&C="+classname+"&M="+metod;

    startRequest(url,returnfuction);

}

 

function startRequestByTR(actionname,trname,returnfuction,classname,metod)

{

    var row = document.getElementById(trname);

    var url = document.forms[actionname].action;

    for(var i=0;i<row.cells.length;i++)

    {

        for(var j=0;j<row.cells[i].children.length;j++)

        {

            var id = row.cells[i].children[j].name;

            var val = row.cells[i].children[j].value;  

            if((//?.{1,}/=.{1,}/).test(url))

            {

                url=url+"&" + id + "=" + val;

            }

            else

            {

                url=url+"?" + id + "=" + val;

            }

        }

    }

    url += "&C="+classname+"&M="+metod;

    startRequest(url,returnfuction);

}

 

 

//主要方法第一個參數是表單ID,第二個參數是處理回發的function

function startRequest(url,returnfuction)

{

    createXMLHttpRequest();

    if((//?.{1,}/=.{1,}/).test(url))

    {

        url=url+"&rdm="+Math.random();//URL添加隨機數,防止瀏覽器緩存不提交數據

    }

    else

    {

        url=url+"?rdm="+Math.random();//URL添加隨機數,防止瀏覽器緩存不提交數據

    }

    xmlHttp.open("GET",url,false);//傳輸數據

    xmlHttp.onreadystatechange = function()

    {

        if (4==xmlHttp.readyState)

        {

                returnfuction(xmlHttp.responseText);//把服務器返回的結果傳遞給回發的function處理

        }

    };//指定回發function名字

    xmlHttp.send(null);//發送

}

 

function $(objID)

{

    return document.getElementById(objID)?document.getElementById(objID):null;

}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章