通過jquery.cookie.js實現(xiàn)記住用戶名、密碼登錄功能
Cookies
定義:讓網(wǎng)站服務(wù)器把少量數(shù)據(jù)儲存到客戶端的硬盤或內(nèi)存,從客戶端的硬盤讀取數(shù)據(jù)的一種技術(shù);
下載與引入:jquery.cookie.js基于jquery;先引入jquery,再引入:jquery.cookie.js;
下載:http://plugins.jquery.com/cookie/
<script type="text/javascript" src="js/jquery.min.js"></script> <script type="text/javascript" src="js/jquery.cookie.js"></script>
1.添加一個"會話cookie"
$.cookie('the_cookie', 'the_value');
這里沒有指明 cookie有效時間,所創(chuàng)建的cookie有效期默認到用戶關(guān)閉瀏覽器為止,所以被稱為 “會話cookie(session cookie)”。
2.創(chuàng)建一個cookie并設(shè)置有效時間為 7天
$.cookie('the_cookie', 'the_value', { expires: 7 });
這里指明了cookie有效時間,所創(chuàng)建的cookie被稱為“持久 cookie (persistent cookie)”。注意單位是:天;
3.創(chuàng)建一個cookie并設(shè)置 cookie的有效路徑
$.cookie('the_cookie', 'the_value', { expires: 7, path: '/' });
在默認情況下,只有設(shè)置 cookie的網(wǎng)頁才能讀取該 cookie。如果想讓一個頁面讀取另一個頁面設(shè)置的cookie,必須設(shè)置cookie的路徑。cookie的路徑用于設(shè)置能夠讀取 cookie的頂級目錄。將這個路徑設(shè)置為網(wǎng)站的根目錄,可以讓所有網(wǎng)頁都能互相讀取 cookie (一般不要這樣設(shè)置,防止出現(xiàn)沖突)。
4.讀取cookie
$.cookie('the_cookie');
5.刪除cookie
.cookie('the_cookie', null); //通過傳遞null作為cookie的值即可
6.可選參數(shù)
$.cookie('the_cookie','the_value',{
expires:7,
path:'/',
domain:'jquery.com',
secure:true
})
expires:(Number|Date)有效期;設(shè)置一個整數(shù)時,單位是天;也可以設(shè)置一個日期對象作為Cookie的過期日期;
path:(String)創(chuàng)建該Cookie的頁面路徑;
domain:(String)創(chuàng)建該Cookie的頁面域名;
secure:(Booblean)如果設(shè)為true,那么此Cookie的傳輸會要求一個安全協(xié)議,例如:HTTPS;
代碼示例:
<!doctype html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>無標題文檔</title>
<script src="jquery-1.8.3.min.js"></script>
<script src="jquery.cookie.js"></script>
<script src="jquery.base64.js"></script>
<script language="javascript" type="text/javascript">
function setCookie(){ //設(shè)置cookie
var loginCode = $("#login_code").val(); //獲取用戶名信息
var pwd = $("#login_password").val(); //獲取登陸密碼信息
var checked = $("[name='checkbox']:checked");//獲取“是否記住密碼”復(fù)選框
if(checked){ //判斷是否選中了“記住密碼”復(fù)選框
$.cookie("login_code",loginCode);//調(diào)用jquery.cookie.js中的方法設(shè)置cookie中的用戶名
$.cookie("pwd",$.base64.encode(pwd));//調(diào)用jquery.cookie.js中的方法設(shè)置cookie中的登陸密碼,并使用base64(jquery.base64.js)進行加密
}else{
$.cookie("pwd", null);
}
}
function getCookie(){ //獲取cookie
var loginCode = $.cookie("login_code"); //獲取cookie中的用戶名
var pwd = $.cookie("pwd"); //獲取cookie中的登陸密碼
if(pwd){//密碼存在的話把“記住用戶名和密碼”復(fù)選框勾選住
$("[name='checkbox']").attr("checked","true");
}
if(loginCode){//用戶名存在的話把用戶名填充到用戶名文本框
$("#login_code").val(loginCode);
}
if(pwd){//密碼存在的話把密碼填充到密碼文本框
$("#login_password").val($.base64.decode(pwd));
}
}
function login(){
var userName = $('#login_code').value;
if(userName == ''){
alert("請輸入用戶名。");
return;
}
var userPass = $('#login_password').value;
if(userPass == ''){
alert("請輸入密碼。");
return;
}
//判斷是否選中復(fù)選框,如果選中,添加cookie
if($("[name='checkbox']").attr("checked","true")){
//添加cookie
setCookie();
alert("記住密碼登錄。");
window.location = "http://www.baidu.com";
}else{
alert("不記密碼登錄。");
window.location = "http://www.baidu.com";
}
}
</script>
</head>
<body onload="getCookie();">
<center>
<table width="400px" height="180px" cellpadding="0" cellspacing="0" border="1" style="margin-top:100px;">
<tr>
<td align="center" colspan="2">歡迎登錄</td>
</tr>
<tr>
<td align="right">
<label>用戶名:</label>
</td>
<td align="left">
<input type="text" id="login_code" name="login_code" style="width:160px; margin-left:10px;" />
</td>
</tr>
<tr>
<td align="right">
<label>密 碼:</label>
</td>
<td align="left">
<input type="password" id="login_password" name="login_password" style="width:160px; margin-left:10px;" />
</td>
</tr>
<tr>
<td align="center" colspan="2">
<span style="font-size:12px; color:blue; vertical-align:middle;">是否記住密碼</span>
<input type="checkbox" style="vertical-align:middle;" />
</td>
</tr>
<tr>
<td align="center" colspan="2">
<input type="submit" id="subLogin" name="subLogin" value="登 錄" onclick="login();"/>
</td>
</tr>
</table>
</center>
</body>
</html>
總結(jié)
以上所述是小編給大家介紹的通過jquery.cookie.js實現(xiàn)記住用戶名、密碼登錄功能,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
相關(guān)文章
jQuery 獲取/設(shè)置/刪除DOM元素的屬性以a元素為例
這篇文章主要介紹了jQuery如何獲取/設(shè)置/刪除DOM元素的屬性,需要的朋友可以參考下2014-05-05
詳解使用jQuery.i18n.properties實現(xiàn)js國際化
這篇文章主要介紹了使用jQuery.i18n.properties實現(xiàn)js國際化,具有一定的參考價值,感興趣的可以隨小編看一看2018-05-05
使用JavaScript+canvas實現(xiàn)圖片裁剪
這篇文章主要介紹了使用JavaScript+canvas實現(xiàn)圖片裁剪的方法,需要的朋友可以參考下2015-01-01
jQuery內(nèi)容折疊效果插件用法實例分析(附demo源碼)
這篇文章主要介紹了jQuery內(nèi)容折疊效果插件用法,結(jié)合實例形式分析了jQuery展開折疊插件jquery.coolfieldset.js的具體使用技巧,并附帶demo源碼供讀者下載參考,需要的朋友可以參考下2016-04-04
jQuery中Ajax全局事件引用方式及各個事件(全局/局部)執(zhí)行順序
這篇文章主要介紹了jQuery中Ajax全局事件引用方式及各個事件(全局/局部)執(zhí)行順序的相關(guān)資料,非常不錯,具有參考借鑒價值,感興趣的朋友一起學(xué)習(xí)吧2016-06-06

