一款经典的ajax登录页面 后台asp.net

下面实现一个经典的登录页面,有保存密码功能,页面上所有的控件都是html控件,没有服务器控件

1,新建一名为login.htm的静态网页文件,作为登录页面,如图

body标签代码

复制代码 代码如下:

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

<div style="text-align: center">

<table border="1" cellpadding="1">

<tr>

<td align="center" style="width: 100px; height: 20px; background-color: #99cccc"

valign="middle">

用户名:</td>

<td align="center" style="width: 74px; height: 20px; background-color: #99cccc" valign="middle">

<input id="txtusername" style="width: 111px; height: 19px" type="text" onblur ="checkuser()" /></td>

<td align="center" style="width: 199px; height: 20px; background-color: #99cccc"

valign="middle"><img src="" id ="imgCheck" style = "visibility :hidden; "/ ><span id ="unMessage">

</span></td>

</tr>

<tr>

<td align="center" style="width: 100px; height: 29px; background-color: #99cccc"

valign="middle">

密码:</td>

<td align="center" style="width: 74px; height: 29px; background-color: #99cccc" valign="middle">

<input id="txtpwd" style="width: 107px; height: 17px" type="password" /></td>

<td align="center" style="width: 199px; height: 29px; background-color: #99cccc"

valign="middle"><span id ="pwdMessage"></span>

</td>

</tr>

<tr>

<td align="center" colspan="3" style="background-color: #99cccc" valign="middle">

<input id="cbRememberPwd" type="checkbox" />记住密码一个月</td>

</tr>

<tr>

<td align="center" colspan="3" style="background-color: #99cccc" 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请求功能函数

//作者:吴宝佑

//get调用方式:(1)实例化 var aj=new ajax(); (2)调用get函数 aj.get(url,callback) (3)写回调函数 function callback(xhr){xhr.responsetext}

//post调用方式:(1)实例化 var aj=new ajax(); (2)调用post函数 aj.post(url,content,callback) (3)写回调函数 function callback(xhr){xhr.responsetext}

//构造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方式发送请求,openUrl为请求的页面,successFun为成功回调执行的函数

    {

        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方式发送请求,openUrl为请求的页面,successFun为成功回调执行的函数

    {

        var request = getXHR();

        request.open("post",openUrl,true);

        request.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");//告诉服务器发送的是文本

        request.onreadystatechange = update;

        function update()

        {

            if (request.readystate==4)

            {

                if (request.status==200)

                {

                    successFun(request);

                }

            }

        }

        request.send(sendContent);

    }

}

loginCookie.js代码如下

//JScript文件

//SetCookie 保存一个Cookie。参数中除了name和value以外,其他可以省略。

//GetCookie 通过一个Cookie的名字取出它的值。

//DelCookie 删除一个Cookie,也就是让一个Cookie立刻过期。参数中除了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")

时间: 2024-09-30 16:06:57

一款经典的ajax登录页面 后台asp.net的相关文章

一款经典的ajax登录页面 后台asp.net_AJAX相关

下面实现一个经典的登录页面,有保存密码功能,页面上所有的控件都是html控件,没有服务器控件 1,新建一名为login.htm的静态网页文件,作为登录页面,如图 body标签代码 复制代码 代码如下: <body onkeydown ="enterLogin()"> <!--添加按下键盘事件--> <div style="text-align: center"> <table border="1" cel

jQuery AJAX实现调用页面后台方法_AJAX相关

本文实例为大家分享了jQuery AJAX调用页面后台方法,供大家参考,具体内容如下 1.新建demo.aspx页面. 2.首先在该页面的后台文件demos.aspx.cs中添加引用. using System.Web.Services; 1).无参数的方法调用. 大家注意了,这个版本不能低于.net framework 2.0.2.0已下不支持的. 后台代码: [WebMethod] public static string SayHello() { return "Hello Ajax!&q

jQuery AJAX实现调用页面后台方法

本文实例为大家分享了jQuery AJAX调用页面后台方法,供大家参考,具体内容如下 1.新建demo.aspx页面. 2.首先在该页面的后台文件demos.aspx.cs中添加引用. using System.Web.Services; 1).无参数的方法调用. 大家注意了,这个版本不能低于.net framework 2.0.2.0已下不支持的. 后台代码: [WebMethod] public static string SayHello() { return "Hello Ajax!&q

ajax的异步请求-用AJAX实现页面部分刷新,无法实现

问题描述 用AJAX实现页面部分刷新,无法实现 function loadXMLDoc() { var xmlhttp; if (window.XMLHttpRequest) {// code for IE7+, Firefox, Chrome, Opera, Safari xmlhttp=new XMLHttpRequest(); } else {// code for IE6, IE5 xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");

登录超时给出提示跳到登录页面(ajax、导入、导出)_AJAX相关

一.一般页面登录超时验证,可以用过滤器filter,如下: package com.lg.filter; import java.io.IOException; import javax.servlet.Filter; import javax.servlet.FilterChain; import javax.servlet.FilterConfig; import javax.servlet.ServletException; import javax.servlet.ServletRequ

使用Jquery搭建最佳用户体验的登录页面之记住密码自动登录功能(含后台代码)_jquery

需要引入插件jquery.md5.js 可直接在IIS下运行: 用户名:Ethan.zhu 密 码:123456789 完整文件下载:WebApplication1_jb51.rar 首先将按钮单击事件的异步验证提取出来作为一个单独的函数,需要将按钮单击事件里面的变量提取出来定义为全局变量,并且增加一个变量editPass(用来标记是自己输入密码,还是从cookies中读取的密码) 复制代码 代码如下: var wrongTypeName, //用户名的错误类型,可以直接作为错误提示信息数组的下

ajax+eclipse+jsp页面后台是java

问题描述 ajax+eclipse+jsp页面后台是java 我想知道怎么用ajax分页,每页10条,ajax写好之后,后台写什么方法去执行调用,我是新手,不懂这些,求大神帮帮忙 我用的是spring,springmvc+hibernate,三个框架,实在是不会了. <script type="text/javascript"> $(function() { //此demo通过Ajax加载分页元素 var initPagination = function() { var

jquery ajax方法调用在session超时以后如何跳转到登录页面?

问题描述 jquery ajax方法调用在session超时以后如何跳转到登录页面?session超时以后虽然被过滤器过滤到了,但是并不会跳转到登录页面请求具体的解决方法.我参考了这篇文章,但是我调用ajaxStart不起作用.http://www.blogjava.net/vickzhu/archive/2009/06/05/280223.htmlext jquery 用户访问超时(ext session过期) 解决两种情况下的用户访问超时.a)普通http请求的session超时.b)异步h

后台-关于aspx 怎么防止不经过登录页面直接在浏览器敲入管理页面

问题描述 关于aspx 怎么防止不经过登录页面直接在浏览器敲入管理页面 首页 login.aspx 是登录页面 default.aspx 是管理页面 怎么防止直接敲入管理页面 我应该在前台写什么 ? 后台写什么? 或者怎么配置webconfig 文件 ? 请大神们赐教了 解决方案 登陆的时候存入session 别的页面读取 如果为null则跳转到登陆页 解决方案二: 参考我的博客解决方案 解决方案三: 在default.aspx的pageload里面写 if (request.session["