久久国产成人av_抖音国产毛片_a片网站免费观看_A片无码播放手机在线观看,色五月在线观看,亚洲精品m在线观看,女人自慰的免费网址,悠悠在线观看精品视频,一级日本片免费的,亚洲精品久,国产精品成人久久久久久久

分享

Ajax的經(jīng)典示例

 天絕緣 2009-10-29
Ajax(Asynchronous JavaScript and XML),使用戶在使用Web程序時(shí),不用在來(lái)來(lái)回回的Post了,,可以近乎實(shí)時(shí)的從客戶端收到服務(wù)器返回的信息,,而無(wú)需刷新,,極大的非富了用戶的操作體驗(yàn),。
       
         XMLHttpRequest對(duì)象是Ajax的核心對(duì)象
        不同的瀏覽器,,建立對(duì)象的方式不同這里以IE為例
        var request = new ActiveXObject("Microsoft.XMLHTTP")
        XMLHttpRequest對(duì)象的方法和屬性:
        open(request-type,url,asynch,username,password):建立到服務(wù)器的新請(qǐng)求,。
        request-type 發(fā)送請(qǐng)求的類型:get,post,head
        url 要連接的url
        asynch 可選參數(shù),,如使用異步連接為true,如使用同步連接為false,,默認(rèn)值為true
        username 可選參數(shù),,如果需要身份驗(yàn)證,則可以在此指定用戶名,,無(wú)可選參數(shù)
        password 可選參數(shù),,如果需要身份驗(yàn)證,則可以在此指定口令,,無(wú)可選參數(shù)
        send(content):向服務(wù)器發(fā)送請(qǐng)求,。
        content 要發(fā)送的內(nèi)容
 
        abort():退出當(dāng)前請(qǐng)求。
        readyState:提供當(dāng)前 HTML 的就緒狀態(tài),。
        0:請(qǐng)求未初始化
        1:請(qǐng)求已經(jīng)建立,,但是還沒(méi)有發(fā)送(還沒(méi)有調(diào)用 send())
        2:請(qǐng)求已發(fā)送,,正在處理中(通常現(xiàn)在可以從響應(yīng)中獲取內(nèi)容頭)
        3:請(qǐng)求在處理中,,通常響應(yīng)中已有部分?jǐn)?shù)據(jù)可用了
        4:響應(yīng)已完成
        status:提供當(dāng)前HTML的狀態(tài)碼
        401:未經(jīng)授權(quán)
        403:禁止訪問(wèn)
        404:沒(méi)找到訪問(wèn)頁(yè)
        200:正常
        XMLHttpRequest對(duì)象的Head請(qǐng)求
        取得Response的Header
        request.getAllResponseHeaders();
        request.getResponseHeader("Server");
        request.getResponseHeader("Connection");
        request.getResponseHeader("Date");
        request.getResponseHeader("Content-Length");
        request.getResponseHeader("Keep-Alive");
        request.getResponseHeader("X-Cache");
        request.getResponseHeader("Content-Type");  
        設(shè)置Request的Header
        request.setRequest("Server") = "";
        request.setRequest("Connection") = "";
        request.setRequest("Date") = "";
        request.setRequest("Content-Length") = "";
        request.setRequest("Keep-Alive") = "";
        request.setRequest("X-Cache") = "";
        equest.setRequest("Content-Type") = "";
        一,、異步調(diào)用的程序示例
       
<script language="JavaScript">
   
    var request = new ActiveXObject("Microsoft.XMLHTTP");    //建立XMLHttpRequest對(duì)象
    function sendRequest()
    {
        url = "http://test/test.asp?Name=" +    Value;    //設(shè)置要發(fā)送的Url,發(fā)送的值為鍵值對(duì)
        request.open("get",url,true);            //調(diào)用open方法
       
        request.onreadystatechange = showMessage;    //設(shè)置服務(wù)器要回調(diào)的方法
        request.send(null);                //發(fā)送
    }
   
    function showMessage()
    {
        if(request.readyState == 4 && request.status == 200)
        {
            alert(request.responseText);
        }
    }
</script>
        二,、同步調(diào)用程序示例
      
<script language="JavaScript">
   
    var request = new ActiveXObject("Microsoft.XMLHTTP");    //建立XMLHttpRequest對(duì)象
    function sendRequest()
    {
        url = "http://test/test.asp?Name=" +    Value;    //設(shè)置要發(fā)送的Url,,發(fā)送的值為鍵值對(duì)
        request.open("get",url,false);            //調(diào)用open方法
       
                       
        request.send(null);                //發(fā)送
   
       
        alert(request.responseText);
       
    }

</script>
       異步請(qǐng)求程序示例說(shuō)明:程序首先建立了XMLHttpRequest對(duì)象,之后以異步的方法執(zhí)行請(qǐng)求,,onreadystatechange是在請(qǐng)求狀態(tài)發(fā)生改變時(shí),,服務(wù)器要回調(diào)的客端方法,要在send()方法之前設(shè)置,,在showMessage()方法里,,當(dāng)readState的狀態(tài)為4且 status為200時(shí),執(zhí)行操作同步請(qǐng)求與異步請(qǐng)求的差別在于,,同步請(qǐng)求時(shí),,客戶端要行進(jìn)等待,當(dāng)服務(wù)器處理完請(qǐng)求后再在執(zhí)行以下的程序,,而異步請(qǐng)求不必如此,,客戶端的程序在請(qǐng)求發(fā)出之后就可以繼續(xù)執(zhí)行,而不必等待,,直到服務(wù)器處理后,,再回調(diào)用onreadystatechange注冊(cè)的方法。
        三,、請(qǐng)求Head的程序示例

<script language="JavaScript">
    var request = new ActiveXObject("Microsoft.XMLHTTP");    //建立XMLHttpRequest對(duì)象
       
    function sendRequest()
    {
        url = "http://test/test.asp";            //要發(fā)送的Url
        request.open("head",url,true);            //調(diào)用open方法
        request.onreadystatechange = showMessage;    //設(shè)置服務(wù)器要回調(diào)的方法
        request.send(null);                //發(fā)送
    }
    function showMessage()
    {
        if(request.readyState == 4 && request.status == 200)
        {
            alert(request.getAllResponseHeaders());    //取得Header的值
        }
    }
   
</script>
        這個(gè)方法與上一個(gè)方法的不同之處就在于open()方法的第一個(gè)參數(shù)是head,,我們可以重寫showMessage以取得相應(yīng)的Head值
function showMessage()
    {
        if(request.readyState == 4 && request.status == 200)
        {
            alert(request.getResponseHeader("Server"));
            alert(request.getResponseHeader("Connection"));
            alert(request.getResponseHeader("Date"));
            alert(request.getResponseHeader("Content-Length"));
            alert(request.getResponseHeader("Keep-Alive"));
            alert(request.getResponseHeader("X-Cache"));
            alert(request.getResponseHeader("Content-Type"));
        }
    }   
        四、發(fā)送XML數(shù)據(jù)
        XMLHttpRequest對(duì)象可向服務(wù)器發(fā)送XML格式的數(shù)據(jù),,但這樣做會(huì)降低程序的響應(yīng)速度,,因?yàn)榕c普通的文本相比,XML格式的數(shù)據(jù),,要處理更多額外的東西,,建議沒(méi)有必要的情況下,不要使用XML
        發(fā)送XML數(shù)據(jù)的程序示例
<script language="JavaScript">
           
        var request = new ActiveXObject("Microsoft.XMLHttpRequest");        //建立XMLHttpRequest對(duì)象
       
        function sendXmlRequest()
        {
            xml = "";                            //XML數(shù)據(jù)   
           
            url = "http://test/test.asp";                    //設(shè)置發(fā)送的Url
           
            request.open("post",url,false);                    //調(diào)用open方法
            request.setRequestHeader("Content-Type","text/xml");        //設(shè)置發(fā)送請(qǐng)求的頭
   
            request.send(xml);
            //要執(zhí)行的程序   
        }
    </script>
 

本文來(lái)自CSDN博客,,轉(zhuǎn)載請(qǐng)標(biāo)明出處:http://blog.csdn.net/sony87615/archive/2009/08/26/4486480.aspx

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,,不代表本站觀點(diǎn),。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買等信息,,謹(jǐn)防詐騙,。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多