日期:2014-05-16  浏览次数:20375 次

js实现记住帐号或密码(js读写COOKIE)

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="test0417.aspx.cs" Inherits="test0417" %>

<!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 runat="server">
??? <title>无标题页</title>
??? <script language="javascript" type="text/javascript">
??????? function onLoginLoaded()
??????? {
??????????? if(isPostBack == "False")
??????????? {
??????????????? GetLastUser();
??????????? }
??????? }
??????? function GetLastUser()
??????? {
??????????? var id = "49BAC005-7D5B-4231-8CEA-16939BEACD67";
??????????? var usr = GetCookie(id);
??????????? if(usr != null)
??????????? {
??????????????? document.getElementById('txtUserName').value = usr;
??????????? }
??????????? else
??????????? {
??????????????? document.getElementById('txtUserName').value = "001";
??????????? }
???????????
??????????? GetPwdAndChk();
??????? }
???????
?????? //點擊登錄時觸發客戶端事件
?????? function SetPwdAndChk()
??????? {??
??????????? //取用戶名
??????????? var usr = document.getElementById('txtUserName').value;
??????????? //alert(usr);
??????????? //將最後一個用戶信息寫入到Cookie
??????????? SetLastUser(usr);?
??????????? //如果記住密碼選項被選中?????????
??????????? if(document.getElementById('chkRememberPwd').checked == true)
??????????? {
??????????????? //取密碼值
??????????????? var pwd = document.getElementById('txtPassword').value;??
??????????????? //alert(pwd);????????????
??????????????? var expdate = new Date();
??????????????? expdate.setTime(expdate.getTime() + 14 * (24 * 60 * 60 * 1000));
??????????????? //將用戶名和密碼寫入到Cookie???????????????
??????????????? SetCookie(usr,pwd, expdate);
??????????? }
??????????? else
??????????? {
??????????????? //如果沒有選中記住密碼,則立即過期
??????????????? ResetCookie();
??????????? }
??????? }
???????
???????
??????? function SetLastUser(usr)
??????? {
??????????? var id = "49BAC005-7D5B-4231-8CEA-16939BEACD67";???????????
??????????? var expdate = new Date();
??????????? //當前時間加上兩周的時間
??????????? expdate.setTime(expdate.getTime() + 14 * (24 * 60 * 60 * 1000));???????????????
??????????? SetCookie(id, usr, expdate);
??????? }
???????
??????? //用戶名失去焦點時調用該方法
??????? function GetPwdAndChk()
??????? {
??????????? var usr = document.getElementById('txtUserName').value;
??????????? var pwd = GetCookie(usr);
????????????????
???????????
??????????? if(pwd != null)
??????????? {
??????????????? document.getElementById('chkRememberPwd').checked = true;
??????????????? document.getElementById('txtPassword').value = pwd;
??????????? }
??????????? else
??????????? {
??????????????? document.getElementById('chkRememberPwd').checked = false;
??????????????? document.getElementById('txtPassword').value = "";
??????????? }
??????? }
???????
??????? //取Cookie的值
??????? function GetCookie (name)
??????? {
??????????? var arg = name + "=";
??????????? var alen = arg.length;
??????????? var clen = document.cookie.length;
??????????? var i = 0;
??????????? while (i < clen)
??????????? {
??????????????? var j = i + alen;
??????????????? //alert(j);
??????????????? if (document.cookie.substring(i, j) == arg)
????????????????? return getCookieVal (j);
??????????????? i = document.cookie.indexOf(" ", i) + 1;
??????????????? if (i == 0) break;
??????????? }
??????????? return null;
??????? }
???????
??????? var isPostBack = "<%= IsPostBack %>";
??????? function getCookieVal (offset)
???