本文實例講述了jquery.cookie.js實作使用者登入保存密碼功能的方法。分享給大家參考,具體如下:
需要導入的js有jquery.js和jquery.cookie.js
<script type="text/javascript" src=" jquery-1.5.2.js"></script> <script type="text/javascript" src="jquery.cookie.js"></script>
在頁面載入時先嘗試取得cookie的值,如果cookie有值,則將取得的值填入輸入方塊中,並將儲存密碼的核取方塊選取
jQuery(function(){ //获取cookie的值 var username = $.cookie('username'); var password = $.cookie('password'); //将获取的值填充入输入框中 $('#uName').val(username); $('#psw').val(password); if(username != null && username != '' && password != null && password != ''){//选中保存秘密的复选框 $("#remember_password").attr('checked',true); } });
在登入時判斷儲存密碼複選框是否被選中,若選中則建立cookie(有效期限可以自己決定,下面的cookie有效期限是7天),若沒有選中,則刪除cookie(因為可能上一次儲存了密碼,本次登入選擇取消儲存密碼,所以需要刪除cookie才能讓下次登入時cookie沒有值)。
特別注意刪除cookie的操作,網路上很多文章使用的方法是$.cookie('username',null),但我使用該方法並不奏效,每次重新登入後cookie都存在,我嘗試使用$.cookie ('username','')仍然會有問題,程式變得不能儲存密碼了。
//提交表单的处理函数 function Login() { var uName =$('#uName').val(); var psw = $('#psw').val(); if($('#remember_password').attr('checked') == true){//保存密码 $.cookie('username',uName, {expires:7,path:'/'}); $.cookie('password',psw, {expires:7,path:'/'}); }else{//删除cookie $.cookie('username', '', { expires: -1, path: '/' }); $.cookie('password', '', { expires: -1, path: '/' }); } //.... //提交表单的操作 }
登入頁面的儲存密碼複選框
<input type="checkbox" name="remember_password" id="remember_password"/> <span id="span_tip" style="margin-bottom:-2px;color:white;font-size:12px;">记住密码 </span>
PS:這裡再為大家推薦一款非常好用的JavaScript壓縮、格式化與加密工具,功能非常強大(對於想讓程式碼加密的朋友不妨試試試試這裡的js加密功能):
JavaScript壓縮/格式化/加密工具:http://tools.jb51.net/code/jscompress
另外,上面這款js工具中的加密使用的是eval函數加密形式,對此本站還提供瞭如下這款針對eval函數加密的解密工具,非常強大實用!
js的eval方法線上加密解密工具:http://tools.jb51.net/password/evalencode
更多關於jQuery相關內容有興趣的讀者可查看本站專題:《jQuery的cookie操作技巧總結》、《jQuery表格(table)操作技巧總結》 、《jQuery拖曳特效與技巧總結》、《jQuery擴充技巧總結》、《jQuery常見經典特效總結》、《