您的位置:首页 > Web前端 > JavaScript

js cookie实现记住密码功能

2017-01-17 11:19 901 查看

 本文为大家分享了js和jQuery记住密码功能的方法,具体如下

一. js 实现记住密码功能

html:

<form id="form22" name="form22" action="checklogin.action" method="post" >
<div class="username" style="margin-top:50px;">
<label>用户名:</label>
<input type="text" name="username" id="userName" />
<span id="myuser" style="color: red; font-size:12px; font-weight: normal;"></span>
</div>
<div class="password">
<label>密 码:</label>
<input name="password" id="passWord" type="password" />
<span id="mypass" style="color: red; font-size:12px; font-weight: normal;"></span>
</div>
<div class="user_type" >
<label>  </label>
<input type="checkbox" id="saveUserName" style="float: left; margin-top:3px;" />
<span> 记住用户</span>
</div>
<input type="button" value="" class="btn_login" id="btn_login" onclick="checkform();"/>
</form>

cookie.js:

function setCookie (name, value) {
var Days = 30; //此 cookie 将被保存 30 天
var exp = new Date();
exp.setTime(exp.getTime() + 1000);
if(value==""||value=="null"
||value=="null"||value==" "){
}else{
document.cookie = name + "="+ escape(value) +";expires=Sun, 17-Jan-2038 19:14:07 GMT";
}
}
function getCookie(sName){
var aCookie = document.cookie.split("; ");
for (var i=0; i < aCookie.length; i++)
{
var aCrumb = aCookie[i].split("=");
if (sName == aCrumb[0])
{
return aCrumb[1];
}
}
return null;
}
function checkCookieExist(name){
if (getCookie(name))
return true;
else
return false;
}
function deleteCookie(name, path, domain){
var strCookie;
// 检查Cookie是否存在
if (checkCookieExist(name)){
// 设置Cookie的期限为己过期
strCookie = name + "=";
strCookie += (path) ? "; path=" + path : "";
strCookie += (domain) ? "; domain=" + domain : "";
strCookie += "; expires=Thu, 01-Jan-70 00:00:01 GMT";
document.cookie = strCookie;
}
}
function saveCookie(name, value, expires, path, domain, secure){
var strCookie = name + "=" + value;
if (expires){
// 计算Cookie的期限, 参数为天数
var curTime = new Date();
curTime.setTime(curTime.getTime() + expires*24*60*60*1000);
strCookie += "; expires=" + curTime.toGMTString();
}
// Cookie的路径
strCookie += (path) ? "; path=" + path : "";
// Cookie的Domain
strCookie += (domain) ? "; domain=" + domain : "";
// 是否需要保密传送,为一个布尔值
strCookie += (secure) ? "; secure" : "";
document.cookie = strCookie;
}

login.js

window.onload = function(){
//console.log("ctx: " + "${ctx}");
var name = getCookie("loginUserName");
document.getElementById("passWord").value="";
if(name != null && name != "") {
document.getElementById("userName").value = name;
document.getElementById("passWord").focus();
} else {  document.getElementById("userName").focus();
}
}
function checkform(){
......
var isChecked = document.getElementById("saveUserName").checked;
if(isChecked) {
setCookie("loginUserName",userName);
}
......
}

二. jquery 实现记住密码功能

参考:http://www.cnblogs.com/lindaZ/p/5069981.html

html:

<form class="form-signin">
  <input type="text" id="username" name="account" autofocus required placeholder="用户名" class="form-control" style="width: 250px; margin-bottom: 5px;">
  <input type="password" id="password" name="password" required placeholder="密码" class="form-control" style="width: 250px;">
  <br/>
  <input id="remember_me" type="checkbox" name="remember_me" onkeydown="check_enter(event)" style="width:250;">
  <span for="remember_me" onkeydown="check_enter(event)" style="width:250px">记住我</span>
  <br/><br/>
  <span class="btn btn-lg btn-primary btn-block">登 录</span>
</form>
<script src="jquery.js" type="text/javascript"></script>
  <script src="jquery.cookie.js" type="text/javascript"></script>

判断checkbox是否被选中,若选中,则将存储cookie:

if ($("#remember_me").attr("checked")) {
    $.cookie("rmbUser", "true", { expires: 7 }); //存储一个带7天期限的cookie
    $.cookie("username", account, { expires: 7 });
    $.cookie("password", password, { expires: 7 });
}
else {
    $.cookie("rmbUser", "false", { expire: -1 });
    $.cookie("username", "", { expires: -1 });
    $.cookie("password", "", { expires: -1 });
}

在每次刷新登录页面加载js时,取出cookie中的用户名和密码,若cookie不为空,用户名和密码输入框被cookie里面的内容填充,复选框设为勾上状态:

$().ready(function(){
    //获取cookie的值
    var username = $.cookie('username');
    var password = $.cookie('password');
    //将获取的值填充入输入框中
    $('#username').val(username);
    $('#password').val(password);
    if(username != null && username != '' && password != null && password != ''){
//选中保存秘密的复选框
     $("#remember_me").attr('checked',true);
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

您可能感兴趣的文章:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  js cookie 记住密码