首頁 >後端開發 >C#.Net教程 >asp.net ajax 簡單實例

asp.net ajax 簡單實例

高洛峰
高洛峰原創
2016-12-16 16:28:161201瀏覽

實例需求:

利用Ajax技術實作一個頁面不刷新的,並且驗證一個使用者名稱是否被註冊過的過程。

要求:

在頁面中新增一個文字方塊標籤用於輸入使用者名,並新增一個按鈕用於提交使用者資料。驗證的結果直接印在頁面上。

操作步驟如下:

1)   開啟Visual Studio 2005建立一個網站

2)   在VS2005工具箱的HTML欄中新增一個 控制項及 控制項。

3)   在

中加入標籤,以便進行Ajax引擎的編寫,並在基本定義一個XMLHttpRequest對象,但是並不進行初始化操作。如下程式碼所示。

var xmlhttp;

       function          xmlhttp =new ActiveXObject ("Microsoft.XMLHTTP");

            //找到名為「Text1」的文字方塊

            var name=document .getElementById ("Text1");

          //查詢字串「name」傳送文字方塊中的資料到目標頁

            xmlhttp.open(" Post","AjaxDemo_1.aspx?name="+name.value);

            //設定伺服器回應返回時用於處理回應的函數名稱

            //送達請求

            xmlhttp .send(null);

}

4)   新增OnMessageBack()函數的內容。代碼如下:

function OnMessageBack()

       {

          if (xmlhttp .readystate==4&&xmlhttp .status==200)

            {

        {

        將回傳的文字列印到頁面上

                document .write (xmlhttp.responsetext     下面為Button1新增事件代碼,將其標籤修改為

6)   頁面中的Ajax引擎已經編寫完畢。在上碼中,大家可以看到該用戶名是透過一個名為「name」的查詢字串進行傳遞的,該查詢字串傳遞到伺服器後需要進行後台處理,因此,要對「AjaxDemo_1.aspx. cs」中的Page_Load方法加入一些ADO.NET程式碼。這裡的資料庫使用的是「Northwind」範例資料庫。程式碼如下所示。

protected void Page_Load(object sender, EventArgs e)

    {

        

        {

            SqlConnection con = new SqlConnection(" ");

            SqlCommand com.Parameters.Add("@CustomerID",SqlDbType.NChar,5).Value =name;

            con. Open();

            int count = (int)com.ExecuteScalar();

       

            if (count == 0)

            {

               Response.Write("<script>alert('該用戶可以用!');</script>");

            }

            else

            {

Response.Write("<script>alert('該使用者已被佔用,請使用其他使用者名稱!');</script>");

            }

}利用Response.Write()方法向客戶端發出回應後,客戶端的Ajax引擎就會截獲該回應流,並在我們事先定義的「OnMessageBack()」方法中處理。

更多asp.net ajax 簡單實例 相關文章請關注PHP中文網!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn