關於Ajax的操作簡單總結:

來源:互聯網
上載者:User

1, 使用JavaScriptjs檔案,驗證使用者名稱是否存在

var ajax = function(option){var request;var createRequest = function()    {//var request;if (window.XMLHttpRequest)        {            request = new XMLHttpRequest();        }else        {try            {                request = new ActiveXObject("Microsoft.XMLHTTP");            }catch (e)            {                request = new ActiveXObject("Msxml2.XMLHTTP");            }        }return request;    }var sendRequest = function()    {        request = createRequest();/*---------GET 和 POST的區別------------            1、 get是把參數資料隊列加到提交表單的ACTION屬性所指的URL中,值和表單內各個欄位一一對應,在URL中可以看到。                post是通過HTTP post機制,將表單內各個欄位與其內容放置在HTML HEADER內一起傳送到ACTION屬性所指的URL地址。使用者看不到這個過程。            2、 對於get方式,伺服器端用Request.QueryString擷取變數的值,                對於post方式,伺服器端用Request.Form擷取提交的資料。                兩種方式的參數都可以用Request來獲得。            3、 get傳送的資料量較小,不能大於2KB。                post傳送的資料量較大,一般被預設為不受限制。            4、 get安全性非常低,post安全性較高。            5、 當我們在提交表單的時候我們通常用post方式,當我們要傳送一個較大的資料檔案時,需要用post。                當傳遞的值只需用參數方式(這個值不大於2KB)的時候,用get方式即可。        */        request.open("GET", option.url, true);//request.open("POST", option.url, true);//發送請求之前設定該屬性,擷取伺服器上的準備狀態        request.onreadystatechange = ResponseRequest;        request.send(null);        }/*        request.readyState == 4說明伺服器已經收到一個響應        request.status == 200,HTTP伺服器響應的狀態值,表示一切順利        HTTP的就緒狀態        0:請求沒有發出(在調用 open() 之前)。         1:請求已經建立但還沒有發出(調用 send() 之前)。         2:請求已經發出正在處理之中(這裡通常可以從響應得到內容標題部)。         3:請求已經處理,響應中通常有部分資料可用,但是伺服器還沒有完成響應。        4:響應已完成,可以訪問伺服器響應並使用它。    */var ResponseRequest = function()    {        alert("HTTP的就緒狀態: "+request.readyState);if (request.readyState == 4)        {if (request.status == 200)            {                alert("一切順利!");                option.Success(request);            }else            {                alert("出現錯誤,錯誤資訊為: "+request.status);                option.Failure(request);             }        }    }    sendRequest();}//判斷輸入的數值是否存在function getIS(){/*        1,url是要連結的頁面和傳過去的值,傳過去值,讓動態網頁面執行        2,Default.aspx為要為這個執行的頁面        3,name是傳過去的參數名        4,document.getElementById('Text1').value傳過去的參數值        5,message.responseText成功之後從服務端返回的訊息    */var option =     {         url: "Default.aspx?name="+document.getElementById('Text1').value,        Success:function(message)        {            alert(message.responseText);        }     };new ajax(option);}

Aspx檔案

if (Request["name"] != null)        {this.Response.Clear();string name = Request["name"].ToString();if (name == "1")            {                Response.Write("使用者名稱已存在,請填寫其他的使用者名稱!");            }else            {                Response.Write("該使用者名稱沒被註冊,可以使用!");            }this.Response.End();        }

2, 通過Jquery實現:

 $(document).ready(function(){        $("#Button1").click(function(){ $.ajax({type:"GET",url:"ResponsePage.aspx?name="+document.getElementById('Text1').value,success:function(message) {                                                               alert(message);                    }});        });        });

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.