`
Yangjinghuan
  • 浏览: 46592 次
  • 性别: Icon_minigender_1
  • 来自: 长沙
社区版块
存档分类
最新评论

cookie示例:登陆页面中的记住密码功能

    博客分类:
  • JSP
阅读更多
登陆页面中的记住密码功能

1.login.html

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" /> 
<title>login</title> 
<script type="text/javascript" src="cookie.js"></script> 
<script type="text/javascript" src="common.js"></script> 
</head> 
<body> 
<form action=""> 
<p> 
    <span>UserName:</span> 
   <input id="userName" type="text" value=""/></p> 
<p> 
    <span>Password:</span> 
    <input id="password" type="password" value=""/></p> 
<p> 
    <span style="font-size:12px; color:blue;">记住密码</span> 
   <input id="saveCookie" type="checkbox" value="" /></p> 
<p> 
    <input id="submit" type="button" value="GO" /> 
</p> 
</form> 
</body> 
</html> 


2.welcome.html

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" /> 
<title>welcome</title> 
</head> 
<body> 
<h1>Welcome!</h1> 
<a href="login.html">点击返回登陆框</a> 
</body> 


3.cookie.js

//新建cookie。  
//hours为空字符串时,cookie的生存期至浏览器会话结束。hours为数字0时,建立的是一个失效的cookie,这个cookie会覆盖已经建立过的同名、同path的cookie(如果这个cookie存在)。  
function setCookie(name,value,hours,path){  
    var name = escape(name);  
    var value = escape(value);  
    var expires = new Date();  
    expires.setTime(expires.getTime() + hours*3600000);  
    path = path == "" ? "" : ";path=" + path;  
    _expires = (typeof hours) == "string" ? "" : ";expires=" + expires.toUTCString();  
    document.cookie = name + "=" + value + _expires + path;  
}  
//获取cookie值  
function getCookieValue(name){  
    var name = escape(name);  
    //读cookie属性,这将返回文档的所有cookie  
    var allcookies = document.cookie;         
    //查找名为name的cookie的开始位置  
    name += "=";  
    var pos = allcookies.indexOf(name);      
    //如果找到了具有该名字的cookie,那么提取并使用它的值  
    if (pos != -1){                                             //如果pos值为-1则说明搜索"version="失败  
        var start = pos + name.length;                  //cookie值开始的位置  
        var end = allcookies.indexOf(";",start);        //从cookie值开始的位置起搜索第一个";"的位置,即cookie值结尾的位置  
        if (end == -1) end = allcookies.length;        //如果end值为-1说明cookie列表里只有一个cookie  
        var value = allcookies.substring(start,end);  //提取cookie的值  
        return unescape(value);                           //对它解码        
        }     
    else return "";                                             //搜索失败,返回空字符串  
}  
//删除cookie  
function deleteCookie(name,path){  
    var name = escape(name);  
    var expires = new Date(0);  
    path = path == "" ? "" : ";path=" + path;  
    document.cookie = name + "="+ ";expires=" + expires.toUTCString() + path;  

</html>


4.common.js

function $(objStr){return document.getElementById(objStr);}  
window.onload = function(){  
   //分析cookie值,显示上次的登陆信息  
    var userNameValue = getCookieValue("userName");  
    $("userName").value = userNameValue;  
   var passwordValue = getCookieValue("password");  
    $("password").value = passwordValue;      
   //写入点击事件  
    $("submit").onclick = function()  
    {  
        var userNameValue = $("userName").value;  
        var passwordValue = $("password").value;  
        //服务器验证(模拟)      
        var isAdmin = userNameValue == "admin" && passwordValue =="123456";  
        var isUserA = userNameValue == "userA" && passwordValue =="userA";  
        var isMatched = isAdmin || isUserA;  
        if(isMatched){  
            if( $("saveCookie").checked){    
                setCookie("userName",$("userName").value,24,"/");  
                setCookie("password",$("password").value,24,"/");  
            }      
            alert("登陆成功,欢迎你," + userNameValue + "!");  
            self.location.replace("welcome.html");  
        }  
        else alert("用户名或密码错误,请重新输入!");      
    }  
分享到:
评论
4 楼 nai598455803 2013-01-15  
不错的例子,顶
3 楼 夕雨下 2011-07-14  
//服务器验证(模拟)     
        var isAdmin = userNameValue == "admin" && passwordValue =="123456"; 
        var isUserA = userNameValue == "userA" && passwordValue =="userA"; 
这样输入的值就是一个定值了, 要是可以变动的呢,怎么写啊???LZ
2 楼 liuyuantp 2010-11-02  
welcome.html有什么用?
1 楼 liuyuantp 2010-11-02  
正好需要,多谢。

相关推荐

Global site tag (gtag.js) - Google Analytics