欧美一级特黄大片做受成人-亚洲成人一区二区电影-激情熟女一区二区三区-日韩专区欧美专区国产专区

如何使用asp.net實現(xiàn)ajax登錄頁面

這篇文章將為大家詳細講解有關如何使用asp.net實現(xiàn)ajax登錄頁面,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。

成都創(chuàng)新互聯(lián)公司致力于互聯(lián)網(wǎng)品牌建設與網(wǎng)絡營銷,包括做網(wǎng)站、成都網(wǎng)站設計、SEO優(yōu)化、網(wǎng)絡推廣、整站優(yōu)化營銷策劃推廣、電子商務、移動互聯(lián)網(wǎng)營銷等。成都創(chuàng)新互聯(lián)公司為不同類型的客戶提供良好的互聯(lián)網(wǎng)應用定制及解決方案,成都創(chuàng)新互聯(lián)公司核心團隊十年專注互聯(lián)網(wǎng)開發(fā),積累了豐富的網(wǎng)站經(jīng)驗,為廣大企業(yè)客戶提供一站式企業(yè)網(wǎng)站建設服務,在網(wǎng)站建設行業(yè)內(nèi)樹立了良好口碑。

下面實現(xiàn)一個經(jīng)典的登錄頁面,有保存密碼功能,頁面上所有的控件都是html控件,沒有服務器控件

1,新建一名為login.htm的靜態(tài)網(wǎng)頁文件,作為登錄頁面,如圖

如何使用asp.net實現(xiàn)ajax登錄頁面

body標簽代碼

復制代碼 代碼如下:


<body onkeydown ="enterLogin()"> <!--添加按下鍵盤事件-->

<div >
<table border="1" cellpadding="1">
<tr>
<td align="center"  
valign="middle">
用戶名:</td>
<td align="center"  valign="middle">
<input id="txtusername"  type="text" onblur ="checkuser()" /></td>
<td align="center"  
valign="middle"><img src="" id ="imgCheck" style = "visibility :hidden; "/ ><span id ="unMessage">
</span></td>
</tr>
<tr>
<td align="center"  
valign="middle">
密碼:</td>
<td align="center"  valign="middle">
<input id="txtpwd"  type="password" /></td>
<td align="center"  
valign="middle"><span id ="pwdMessage"></span>
</td>
</tr>
<tr>
<td align="center" colspan="3"  valign="middle">
<input id="cbRememberPwd" type="checkbox" />記住密碼一個月</td>
</tr>
<tr>
<td align="center" colspan="3"  valign="middle">
<input id="btnOK" type="button" value="登錄" onclick ="login()" />
<input id="btnReset" type="button" value="重置" onclick ="reset()" /></td>
</tr>
</table>
</div>

</body>

2,在login.htm中引入外部js代碼

<script type ="text/javascript" src ="aj.js" ></script>
<script type ="text/javascript" src ="loginCookies.js" ></script>

其中aj.js為ajax封裝的類,loginCookie.js為對Cookie操作的代碼

aj.js代碼如下

//JScript文件

//ajax請求功能函數(shù)
//作者:吳寶佑
//get調(diào)用方式:(1)實例化 var aj=new ajax(); (2)調(diào)用get函數(shù) aj.get(url,callback) (3)寫回調(diào)函數(shù) function callback(xhr){xhr.responsetext}
//post調(diào)用方式:(1)實例化 var aj=new ajax(); (2)調(diào)用post函數(shù) aj.post(url,content,callback) (3)寫回調(diào)函數(shù) function callback(xhr){xhr.responsetext}

//構(gòu)造ajax對象

function ajax() 
{
    function getXHR()//獲取xmlhttprequest
    {
        var request=false;
        try 
        {
            request = new XMLHttpRequest();
        } 
        catch (trymicrosoft) 
        {
              try 
              {
                request = new ActiveXObject("Msxml2.XMLHTTP");
              } 
              catch (othermicrosoft) 
              {
                try 
                {
                      request = new ActiveXObject("Microsoft.XMLHTTP");
                } 
                catch (failed) 
                {
                      request = false;
                }
              }
        }
        return request;
    }

    this.get = function (openUrl,successFun)//ajax對象的get方法,通過get方式發(fā)送請求,openUrl為請求的頁面,successFun為成功回調(diào)執(zhí)行的函數(shù)
    {
        var request = getXHR();
        request.open("get",openUrl,true);
//        request.onreadystatechange = function ()
//        {
//            if (request.readystate==4)
//            {
//                if (request.status==200)
//                {
//                    successFun(request);
//                }
//            }
//        };
        request.onreadystatechange = update;
        function update()
        {
            if (request.readystate==4)
            {
                if (request.status==200)
                {
                    successFun(request);
                }
            }
        }
        request.send(null);
    }

    this.post = function (openUrl,sendContent,successFun)//ajax對象的post方法,通過post方式發(fā)送請求,openUrl為請求的頁面,successFun為成功回調(diào)執(zhí)行的函數(shù)
    {
        var request = getXHR();
        request.open("post",openUrl,true);
        request.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");//告訴服務器發(fā)送的是文本
        request.onreadystatechange = update;
        function update()
        {
            if (request.readystate==4)
            {
                if (request.status==200)
                {
                    successFun(request);
                }
            }
        }
        request.send(sendContent);
    }
}

loginCookie.js代碼如下

//JScript文件

//SetCookie 保存一個Cookie。參數(shù)中除了name和value以外,其他可以省略。
//GetCookie 通過一個Cookie的名字取出它的值。
//DelCookie 刪除一個Cookie,也就是讓一個Cookie立刻過期。參數(shù)中除了name,其他可以省略。


//測試
//SetCookie("username", "123");expires代表"月"
//alert(GetCookie("username"));
//DelCookie("username");
//alert(GetCookie("username"));



function SetCookie(name, value, expires, path, domain, secure) {
  var today = new Date();
  today.setTime(today.getTime());
  if(expires) { expires *= 2592000; }
  var expires_date = new Date(today.getTime() + (expires));
  document.cookie = name + "=" + escape(value)
    + (expires ? ";expires=" + expires_date.toGMTString() : "")
    + (path ? ";path=" + path : "")
    + (domain ? ";domain=" + domain : "")
    + (secure ? ";secure" : "");
}

function GetCookie(name) {
  var cookies = document.cookie.split( ';' );
  var cookie = '';

  for(var i=0; i<cookies.length; i++) {
    cookie = cookies[i].split('=');
    if(cookie[0].replace(/^\s+|\s+$/g, '') == name) {
      return (cookie.length <= 1) ? "" : unescape(cookie[1].replace(/^\s+|\s+$/g, ''));
    }
  }
  return null;
}

function Delcookie(name, path, domain) {
  document.cookie = name + "="
    + (path ? ";path=" + path : "")
    + (domain ? ";domain=" + domain : "")
    + ";expires=Thu, 01-Jan-1970 00:00:01 GMT";
}

3,寫login.htm頁面中的js代碼,放在head標簽之間

    <script type ="text/javascript" >
        window.onload = function (){
            document.getElementById ('txtusername').focus();//用戶名框獲得焦點

            if (GetCookie('user_name') != null && GetCookie('user_pwd') != null)//設置記住密碼的登錄頁面
            {
                document.getElementById ("txtusername").value = GetCookie('user_name');
                document.getElementById ("txtpwd").value = GetCookie('user_pwd');
            }
        }

        String.prototype.Trim = function() //自定義的去除字符串兩邊空格的方法
        { 
            return this.replace(/(^\s*)|(\s*$)/g, ""); 
        } 

        function checkuser()//檢驗用戶名是否正確
        {
            var img = document.getElementById ("imgCheck")
            img.src="iamges/blue-loading.gif";//設置圖片及其可見性
            img.style.visibility = "visible";

            var aj = new ajax();//以下為ajax請求
            var username = document.getElementById ("txtusername").value.Trim();
            var url = "login.aspx?uname="+escape(username);
            aj.get(url,callback);
            function callback(obj)
            {
                var response = obj.responsetext;
                var res = response.split('\n');
                if (res[0] == "ok")
                {
                    img.src="iamges/icon-info.gif";
                    document.getElementById ("unMessage").innerHTML = "<font color='#00ff00'>用戶名正確</font>";
                }
                else
                {
                    img.src="iamges/icon-warning.gif";
                    document.getElementById ("unMessage").innerHTML = "<font color='#ff0000'>用戶名錯誤</font>";
                }
            }
        }

        
        function login()//登錄
        {
            if (document.getElementById ("unMessage").innerText == "用戶名錯誤")
            {
                alert("你的用戶名錯誤");
            }
            else if (document.getElementById ("txtpwd").value == "")
            {
                alert("請輸入密碼");
            }
            else
            {
                var aj = new ajax();
                var username = document.getElementById ("txtusername").value.Trim();
                var userpwd = document.getElementById ("txtpwd").value;
                var url = "login.aspx?name="+escape(username)+"&pwd="+escape(userpwd);
                aj.get(url,callback);
                function callback(obj)
                {
                    var response = obj.responsetext;
                    var res = response.split('\n');
                    if (res[0] == "ok")
                    {
                        if (document.getElementById ("cbRememberPwd").checked)
                        {
                            SetCookie('user_name',username,1);//保存密碼一個月
                            SetCookie('user_pwd',userpwd,1);
                        }
                        else
                        {
                            SetCookie('user_name',username);
                            SetCookie('user_pwd',userpwd);
                        }
                        window.open ("loginIndex.htm","_self");
                    }
                    else
            &p;            {
                        alert("密碼錯誤");
                    }
                }
            }
        }

        function reset()//重置
        {
            window.onload();//執(zhí)行窗體登錄事件
            document.getElementById ("txtusername").value="";
            document.getElementById ("txtpwd").value="";
        }

        function enterLogin()
        {
            if (event.keyCode==13) //如果按下的是Enter鍵的話,就執(zhí)行登錄語句
            {
                login();
            }
        }
    </script>

4,新建一名為login.aspx的頁面,該頁面作為ajax請求的頁面,login.aspx.cs代碼如下

    protected void Page_Load(object sender, EventArgs e)
    {
        OleDbConnection Conn = DBcon.get_con();

        if (Request["uname"] != null)
        {
            string username = Request["uname"].ToString();
            string strSql = "select * from [user] where u_name='" + username + "'";
            Conn.Open();
            OleDbCommand Comd = new OleDbCommand(strSql, Conn);
            OleDbDataReader dr = Comd.ExecuteReader();
            if (dr.Read())
            {
                Response.Write("ok\n");
            }
            else
            {
                Response.Write("fail\n");
            }
            //if (Comd.ExecuteNonQuery() > 0)
            //{
            //    Response.Write("存在這個用戶\n");
            //}
            //else
            //{
            //    Response.Write("沒有此用戶名\n");
            //}
            Conn.Close();
        }

        if (Request["name"] != null && Request["pwd"] != null)
        {
            string name = Request["name"].ToString();
            string pwd = Request["pwd"].ToString();
            string strSql = "select * from [user] where u_name='" + name + "'" + " and u_pwd='" + pwd + "'";
            Conn.Open();
            OleDbCommand Comd = new OleDbCommand(strSql, Conn);
            OleDbDataReader dr = Comd.ExecuteReader();
            if (dr.Read())
            {
                Response.Write("ok\n");
            }
            else
            {
                Response.Write("fail\n");
            }
        }
    }

5,新建一名為loginIndex.htm的靜態(tài)頁面,作為用戶登錄之后的首頁

其body標簽代碼如下

<body>
    <span id ="username"> </span>
</body>

6,在loginIndex.htm頁面引入loginCookie.js文件

<script type ="text/javascript" src ="loginCookies.js" ></script>

7,寫loginIdex.htm頁面的js代碼,放在head標簽之間

    <script type ="text/javascript" >
        window.onload = function ()
        {
            if(GetCookie('user_name')==null || GetCookie('user_pwd')==null)//如果沒有登錄,而是直接在網(wǎng)頁中輸入網(wǎng)址的
            {
                alert('你還沒有登錄!\n返回到登陸頁面。');
                window.navigate("login.htm");
            }
            else
            {
                var uname = GetCookie('user_name');
                document.getElementById ('username').innerHTML ="歡迎你: " + uname + "&nbsp; &nbsp; &nbsp;<a href='#' onclick = 'off()'>注銷</a>";//提供"注銷"按鈕
            }
        }

        function off()//注銷事件
        {
            if (window.confirm("你真要注銷嗎?"))
            {
                Delcookie("user_name");
                Delcookie("user_pwd");
                window.navigate("login.htm");
            }
        }
    </script>

8,完成,客戶端代碼較多,但是交互性很好

演示如下:

當輸入完用戶名,鼠標光標離開用戶名框之后,系統(tǒng)會快速檢驗用戶名是否合法

如何使用asp.net實現(xiàn)ajax登錄頁面

如何使用asp.net實現(xiàn)ajax登錄頁面

進入首頁后,出現(xiàn)的窗口,帶有當前登錄的用戶和注銷按鈕

如何使用asp.net實現(xiàn)ajax登錄頁面

當用戶點擊注銷按鈕時,會友情提示你是否真的注銷

如何使用asp.net實現(xiàn)ajax登錄頁面

當你不是輸入用戶和密碼登陸,也是直接在瀏覽器地址欄中輸入首頁網(wǎng)址的時候,系統(tǒng)會提示你沒有登錄,并直接返回到登陸頁面。

如何使用asp.net實現(xiàn)ajax登錄頁面

當用戶輸入了有效的用戶名和密碼,并要求系統(tǒng)記住密碼,用戶下次進入到登錄頁面時,系統(tǒng)會把上次記住的用戶名和密碼顯示在輸入框中。。

并且這個時候直接在瀏覽器的地址欄中輸入首頁地址,也是能正常訪問的。

如何使用asp.net實現(xiàn)ajax登錄頁面

nbsp;       {
                        alert("密碼錯誤");
                    }
                }
            }
        }

        function reset()//重置
        {
            window.onload();//執(zhí)行窗體登錄事件
            document.getElementById ("txtusername").value="";
            document.getElementById ("txtpwd").value="";
        }

        function enterLogin()
        {
            if (event.keyCode==13) //如果按下的是Enter鍵的話,就執(zhí)行登錄語句
            {
                login();
            }
        }
    </script>

4,新建一名為login.aspx的頁面,該頁面作為ajax請求的頁面,login.aspx.cs代碼如下

    protected void Page_Load(object sender, EventArgs e)
    {
        OleDbConnection Conn = DBcon.get_con();

        if (Request["uname"] != null)
        {
            string username = Request["uname"].ToString();
            string strSql = "select * from [user] where u_name='" + username + "'";
            Conn.Open();
            OleDbCommand Comd = new OleDbCommand(strSql, Conn);
            OleDbDataReader dr = Comd.ExecuteReader();
            if (dr.Read())
            {
                Response.Write("ok\n");
            }
            else
            {
                Response.Write("fail\n");
            }
            //if (Comd.ExecuteNonQuery() > 0)
            //{
            //    Response.Write("存在這個用戶\n");
            //}
            //else
            //{
            //    Response.Write("沒有此用戶名\n");
            //}
            Conn.Close();
        }

        if (Request["name"] != null && Request["pwd"] != null)
        {
            string name = Request["name"].ToString();
            string pwd = Request["pwd"].ToString();
            string strSql = "select * from [user] where u_name='" + name + "'" + " and u_pwd='" + pwd + "'";
            Conn.Open();
            OleDbCommand Comd = new OleDbCommand(strSql, Conn);
            OleDbDataReader dr = Comd.ExecuteReader();
            if (dr.Read())
            {
                Response.Write("ok\n");
            }
            else
            {
                Response.Write("fail\n");
            }
        }
    }

5,新建一名為loginIndex.htm的靜態(tài)頁面,作為用戶登錄之后的首頁

其body標簽代碼如下

<body>
    <span id ="username"> </span>
</body>

6,在loginIndex.htm頁面引入loginCookie.js文件

<script type ="text/javascript" src ="loginCookies.js" ></script>

7,寫loginIdex.htm頁面的js代碼,放在head標簽之間

    <script type ="text/javascript" >
        window.onload = function ()
        {
            if(GetCookie('user_name')==null || GetCookie('user_pwd')==null)//如果沒有登錄,而是直接在網(wǎng)頁中輸入網(wǎng)址的
            {
                alert('你還沒有登錄!\n返回到登陸頁面。');
                window.navigate("login.htm");
            }
            else
            {
                var uname = GetCookie('user_name');
                document.getElementById ('username').innerHTML ="歡迎你: " + uname + "&nbsp; &nbsp; &nbsp;<a href='#' onclick = 'off()'>注銷</a>";//提供"注銷"按鈕
            }
        }

        function off()//注銷事件
        {
            if (window.confirm("你真要注銷嗎?"))
            {
                Delcookie("user_name");
                Delcookie("user_pwd");
                window.navigate("login.htm");
            }
        }
    </script>

8,完成,客戶端代碼較多,但是交互性很好

演示如下:

當輸入完用戶名,鼠標光標離開用戶名框之后,系統(tǒng)會快速檢驗用戶名是否合法

如何使用asp.net實現(xiàn)ajax登錄頁面

如何使用asp.net實現(xiàn)ajax登錄頁面

進入首頁后,出現(xiàn)的窗口,帶有當前登錄的用戶和注銷按鈕

如何使用asp.net實現(xiàn)ajax登錄頁面

當用戶點擊注銷按鈕時,會友情提示你是否真的注銷

如何使用asp.net實現(xiàn)ajax登錄頁面

當你不是輸入用戶和密碼登陸,也是直接在瀏覽器地址欄中輸入首頁網(wǎng)址的時候,系統(tǒng)會提示你沒有登錄,并直接返回到登陸頁面。

如何使用asp.net實現(xiàn)ajax登錄頁面

當用戶輸入了有效的用戶名和密碼,并要求系統(tǒng)記住密碼,用戶下次進入到登錄頁面時,系統(tǒng)會把上次記住的用戶名和密碼顯示在輸入框中。。

并且這個時候直接在瀏覽器的地址欄中輸入首頁地址,也是能正常訪問的。

如何使用asp.net實現(xiàn)ajax登錄頁面

關于“如何使用asp.net實現(xiàn)ajax登錄頁面”這篇文章就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,使各位可以學到更多知識,如果覺得文章不錯,請把它分享出去讓更多的人看到。

網(wǎng)站名稱:如何使用asp.net實現(xiàn)ajax登錄頁面
文章鏈接:http://aaarwkj.com/article40/gjogeo.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供移動網(wǎng)站建設動態(tài)網(wǎng)站、網(wǎng)站設計公司、自適應網(wǎng)站、響應式網(wǎng)站、外貿(mào)建站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都定制網(wǎng)站網(wǎng)頁設計
亚洲中文字幕激情中午字幕| 欧美一区二区高清不卡| 日韩爱爱特级视频中文字幕| 国产精品大片一区二区三区四区| 欧美午夜福利视频电影| 国产亚洲加勒比久久精品| 国产伦理自拍视频在线观看| 久久精品国产亚洲av麻豆网站| 成人午夜激情在线观看| 漂亮人妻少妇中文字幕| 国产日韩精品欧美综合区| 久久精品国产视频在热| 国产大片在线观看一区二区| 五月天男人的天堂精品| 一区二区三区蜜桃91| 日韩精品a区二区在线电影| 亚洲国产a级一区二区| 国产亚洲精品a久久7777| 夫妻在线观看高清视频| 欧美日韩亚洲中文综合网| 中文字幕乱码人妻一区二| 男女裸体做爰一进一出视频| av影片免费网址大全| 国产亚洲理论片在线观看| 欧美午夜福利一级高清| 欧美一区二区国产精品日韩| 白虎亚洲福利精品一区| 亚洲国产精品有码专区| 精品人妻少妇av一区二区| 亚洲最色最黄大片在线视频| 成人18禁h黄在线看免费| 熟女肥臀一区二区三区| 日本一区二区中文字幕视频| 国产白丝扒开做爽爽爽网站| 中国成熟女人毛茸茸视频| 我想看日韩一级黄色片| 国产精品视频一区二区久久| 亚洲欧洲一区二区中文字幕| 国内传媒视频免费观看| 久草福利视频免费播放| 伊人久久大香线蕉av色婷婷色|