中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

怎么在JavaScript中利用cookie保存用戶的登錄信息

發布時間:2021-03-24 17:38:55 來源:億速云 閱讀:641 作者:Leah 欄目:web開發

怎么在JavaScript中利用cookie保存用戶的登錄信息?很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細講解,有這方面需求的人可以來學習下,希望你能有所收獲。

通常cookie和session,是web開發中用于存儲信息的對象,session存在于服務器的內存中,而cookie則是存在客戶端,所以js可以直接操作cookie進行信息的存儲和讀取。

js存放cookie一般的寫法,如:document.cookie="userName=admin";,如果是多個鍵值對:document.cookie="userName=admin; userPass=123";

下面是js操作cookie保存用戶的登錄信息:

<!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>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>無標題文檔</title>
<script language="javascript" type="text/javascript">
function addCookie(name,value,days,path){  /**添加設置cookie**/
  var name = escape(name);
  var value = escape(value);
  var expires = new Date();
  expires.setTime(expires.getTime() + days * 3600000 * 24);
  //path=/,表示cookie能在整個網站下使用,path=/temp,表示cookie只能在temp目錄下使用
  path = path == "" ? "" : ";path=" + path;
  //GMT(Greenwich Mean Time)是格林尼治平時,現在的標準時間,協調世界時是UTC
  //參數days只能是數字型
  var _expires = (typeof days) == "string" ? "" : ";expires=" + expires.toUTCString();
  document.cookie = name + "=" + value + _expires + path;
}
function getCookieValue(name){ /**獲取cookie的值,根據cookie的鍵獲取值**/
  //用處理字符串的方式查找到key對應value
  var name = escape(name);
  //讀cookie屬性,這將返回文檔的所有cookie
  var allcookies = document.cookie;
  //查找名為name的cookie的開始位置
  name += "=";
  var pos = allcookies.indexOf(name);
  //如果找到了具有該名字的cookie,那么提取并使用它的值
  if (pos != -1){                       //如果pos值為-1則說明搜索"version="失敗
    var start = pos + name.length;         //cookie值開始的位置
    var end = allcookies.indexOf(";",start);    //從cookie值開始的位置起搜索第一個";"的位置,即cookie值結尾的位置
    if (end == -1) end = allcookies.length;    //如果end值為-1說明cookie列表里只有一個cookie
    var value = allcookies.substring(start,end); //提取cookie的值
    return (value);              //對它解碼
  }else{ //搜索失敗,返回空字符串
    return "";
  }
}
function deleteCookie(name,path){  /**根據cookie的鍵,刪除cookie,其實就是設置其失效**/
  var name = escape(name);
  var expires = new Date(0);
  path = path == "" ? "" : ";path=" + path;
  document.cookie = name + "="+ ";expires=" + expires.toUTCString() + path;
}
/**實現功能,保存用戶的登錄信息到cookie中。當登錄頁面被打開時,就查詢cookie**/
window.onload = function(){
  var userNameValue = getCookieValue("userName");
  document.getElementById("txtUserName").value = userNameValue;
  var userPassValue = getCookieValue("userPass");
  document.getElementById("txtUserPass").value = userPassValue;
}
function userLogin(){  /**用戶登錄,其中需要判斷是否選擇記住密碼**/
  //簡單驗證一下
  var userName = document.getElementById("txtUserName").value;
  if(userName == ''){
    alert("請輸入用戶名。");
    return;
  }
  var userPass = document.getElementById("txtUserPass").value;
  if(userPass == ''){
    alert("請輸入密碼。");
    return;
  }
  var objChk = document.getElementById("chkRememberPass");
  if(objChk.checked){
    //添加cookie
    addCookie("userName",userName,7,"/");
    addCookie("userPass",userPass,7,"/");
    alert("記住了你的密碼登錄。");
    window.location.href = "http://www.baidu.com";
  }else{
    alert("不記密碼登錄。");
    window.location.href = "http://www.baidu.com";
  }
}
</script>
</head>
<body>
<center>
  <table width="400px" height="180px" cellpadding="0" cellspacing="0" border="1" >
    <tr>
      <td align="center" colspan="2">歡迎使用XXX管理系統</td>
    </tr>
    <tr>
      <td align="right">
        <label>用戶名:</label>
      </td>
      <td align="left">
        <input type="text" id="txtUserName" name="txtUserName"  />
      </td>
    </tr>
    <tr>
      <td align="right">
        <label>密 碼:</label>
      </td>
      <td align="left">
        <input type="password" id="txtUserPass" name="txtUserPass"  />
      </td>
    </tr>
    <tr>
      <td align="center" colspan="2">
        <span >是否記住密碼</span>
        <input type="checkbox" id="chkRememberPass" name="chkRememberPass"  />
      </td>
    </tr>
    <tr>
      <td align="center" colspan="2">
        <input type="submit" id="subLogin" name="subLogin" value="登 錄" onclick="userLogin()"/>
        <input type="reset" id="resetLogin" name="resetLogin" value="重 置" />
      </td>
    </tr>
  </table>
</center>
</body>
</html>

看完上述內容是否對您有幫助呢?如果還想對相關知識有進一步的了解或閱讀更多相關文章,請關注億速云行業資訊頻道,感謝您對億速云的支持。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

清水河县| 枣强县| 屏山县| 常山县| 方城县| 泌阳县| 普兰店市| 凉城县| 巴里| 新宁县| 梅河口市| 武清区| 上高县| 娱乐| 天等县| 临洮县| 潜江市| 白朗县| 清水河县| 阜宁县| 霍山县| 田东县| 和林格尔县| 元阳县| 思南县| 蓬溪县| 边坝县| 习水县| 九江县| 武鸣县| 长宁区| 依安县| 林西县| 务川| 兴化市| 东乡族自治县| 虹口区| 家居| 浙江省| 嫩江县| 定日县|