要使用cookie来记住上一次登录时的用户名和密码。主要分为两部分,一个是设置cookie,另一个是读取cookie。当用户第一次登录时设置cookie,并把这个cookie存储起来加一个过期期限,当用户再次登录时读取之前已经存储的cookie即可。
注意:如果是在本地测试,在Firefox才能记录cookie信息。具体方法是:
下面通过一个表单来举例,为尽量模拟真实的提交表单,把action值暂时设置为提交到百度:
<form action="http://www.baidu.com" id="form1"> 用户名:<input type="text" name="user" /><br/> 密码:<input type="password" name="pass" /><br/> <input type="submit" value="登陆"/> </form>
/* 1、当用户第一次登陆时(提交表单时),把user存进cookie里 2、当用户在此打开时(reload),读取cookie */ //设置cookie function setCookie(name,value,iDay){ //三个参数分别为:cookie名称、值、多少天后过期 var oDate=new Date(); //这里的设置时间并不是修改系统时间,而是oDate这个日期对象内部的时间。使用这个方法可以算出该日期的几天后的日期时间 oDate.setDate(oDate.getDate()+iDay); document.cookie=name+'='+value+';expires='+oDate; }; //读取cookie function getCookie(name){ var arr=document.cookie.split('; '); for(var i=0;i<arr.length;i++){ var arr2=arr[i].split('='); //拆分后,arr2[0]就代表cookie的name名称,arr[1]就代表cookie的value值 if(arr2[0]==name){ return arr2[1]; } } return ''; //当用户是第一次进入网站,根本就还没有cookie的时候,返回一个空的字符串 }; window.onload=function(){ var oForm=document.getElementById('form1'); var oUser=document.getElementsByName('user')[0]; oForm.onsubmit=function(){ //存cookie setCookie('user',oUser.value,1); //设置1天后过期 }; //再次登陆时读取cookie oUser.value=getCookie('user'); };这样当第一次登录时就会把用户名记住,并跳转到百度,当再次打开页面时就会自动显示之前输入的用户名了,密码设置也是同理。
Author:致知
Sign:路漫漫其修远兮,吾将上下而求索。
版权声明:本文为博主原创文章,未经博主允许不得转载。
原文地址:http://blog.csdn.net/lzgs_4/article/details/46885011