【转】来自:http://blog.csdn.net/itmyhome1990/article/details/7363816

JSP表单页面

  1. <form action="login" method="post">
  2. 用户名:<input type="text" name="username" id="username" /><br>
  3. 密码:<input type="password" name="password" /><br />
  4. <input type="checkbox" id="remember" checked="checked">
  5. 记住用户名<input type="submit" value="登录" id="sub" />
  6. </form>

JS操作cookie

  1. <script type="text/javascript">
  2. $(document).ready(function() {
  3. var name = getCookie("username");
  4. //$("#username")[0].value=name;
  5. $("#username").val(name);
  6. /*
  7. * 当点击登录按钮时 判断是否勾选记住用户名
  8. * 如果勾选  则将用户名保存在Cookie中 否则删除
  9. */
  10. $("#sub").click(function() {
  11. if ($("#remember").attr("checked") == true) {
  12. //获得用户名
  13. var username = $("#username").val();
  14. //设置cookie
  15. setCookie("username", username);
  16. } else {
  17. //删除cookie
  18. delCookie("username")
  19. }
  20. })
  21. function setCookie(name, value) {
  22. var Days = 60; //cookie 将被保存两个月
  23. var exp = new Date(); //获得当前时间
  24. exp.setTime(exp.getTime() + Days * 24 * 60 * 60 * 1000); //换成毫秒
  25. document.cookie = name + "=" + escape(value) + ";expires=" + exp.toGMTString();
  26. }
  27. function getCookie(name) {
  28. //取出cookie
  29. var strCookie = document.cookie;
  30. //cookie的保存格式是 分号加空格 "; "
  31. var arrCookie = strCookie.split("; ");
  32. for ( var i = 0; i < arrCookie.length; i++) {
  33. var arr = arrCookie[i].split("=");
  34. if (arr[0] == "username") {
  35. return arr[1];
  36. }
  37. }
  38. return "";
  39. }
  40. function delCookie(name) {
  41. var exp = new Date(); //当前时间
  42. exp.setTime(exp.getTime() - 1); //删除cookie 只需将cookie设置为过去的时间
  43. var cval = getCookie(name);
  44. if (cval != null)
  45. document.cookie = name + "=" + cval + ";expires="+ exp.toGMTString();
  46. }
  47. })
  48. </script>

cookie简单介绍

cookie是浏览器提供的一种机制,它将document对象的cookie属性提供给javascript。可以由javascript对起进行控制

而并不是javascript本身的性质。cookie是存于用户硬盘的一个文件,这个文件通常对应于一个域名,当浏览器再次

访问这个域名时,便使这个cookie可用。因此,cookie可以跨越一个域名下的多个网页,但不能跨越多个域名使用。

cookie机制将信息存储于用户硬盘,因此可以作为全局变量,这是它最大的一个优点。它可以用于以下几种场合。

(1) 保存用户登录状态

(2) 跟踪用户行为

(3) 定制页面

(4) 创建购物车

设置cookie

每个cookie都是一个名/值对,可以把下面这样一个字符串赋值给document.cookie

document.cookie="username=zhangsan";

如果要一次存储多个名/值对,可以使用分号加空格(;  )隔开,例如:

document.cookie="username=zhangsan;  password=123";

在cookie 的名或值中不能使用分号(;)、逗号(,)、等号(=)以及空格。在cookie的名中做到这点很容易,但要保存的值是不确定的。如何来存储这些值呢?方 法是用escape()函数进行编码,它能将一些特殊符号使用十六进制表示,例如空格将会编码为“20%”,从而可以存储于cookie值中,而且使用此 种方案还可以避免中文乱码的出现。

给cookie设置终止日期

到现在为止,所以的cookie都是单会话cookie,即浏览器关闭后这些cookie将会丢失。

在实际开发中,cookie常常需要长期保持,例如保存用户登录的状态,可以用下面的选项来实现:

document.cookie="username=zhangsan; expiress=GMT_String";

其中GMT_String是以GMT格式表示的时间字符串,这条语句就是将username这个cookie设置为GMT_String

表示的过期时间,超过这个时间,cookie将消失,不可访问

js保存,获取,删除cookie的操作的更多相关文章

  1. js 判断js函数、变量是否存在 JS保存和删除cookie操作,判断cookie是否存在的方法

    //是否存在指定函数 function isExitsFunction(funcName) {    try {        if (typeof(eval(funcName)) == " ...

  2. js 第四章 cookie的操作

    js 第四章 cookie的操作 一.学习要点 掌握cookie的简单应用 二. js 第四章 cookie的操作 了解cookie 什么是cookie? cookie 是存储于访问者的计算机中的变量 ...

  3. JS读取写入删除COOKIE的各种操作

    1. .NET后置代码中获取 Response.Redirect("http://www.baidu.com?id=" +Request.Cookies["size&qu ...

  4. js添加、删除Cookie

    //cookie function addCookie(objName, objValue, objHours) { //添加cookie var str = objName + "=&qu ...

  5. 如何设置,获取,删除cookie?

    cookie : 存储数据,当用户访问了某个网站(网页)的时候,我们就可以通过cookie来像访问者电脑上存储数据 1.不同的浏览器存放的cookie位置不一样,也是不能通用的 2.cookie的存储 ...

  6. Js添加、读取、删除cookie,判断cookie是否有效,指定domain域下主路径path下设置cookie,设置expires过期时间

    有时我们需要用cookie保存用户名,记录登录状态,如何正确判断该机用户cookie是否存在呢?不能简单使用a!=”这样的写法. 正确方法是:判断是否存在名为username3的cookie,使用do ...

  7. Jquery对Cookie的操作

    第一步:先引用jQuery的插件jquery-1.9.1.min.js 第二步:引用jquery.cookie.js插件 下对cookie的操作: $.cookie("cookieName& ...

  8. js封装Cookie操作 js 获取cookie js 设置cookie js 删除cookie

    每天学习一点点 编程PDF电子书.视频教程免费下载:http://www.shitanlife.com/code var CookieUtil = { // 设置cookie set : functi ...

  9. js/java 获取、添加、修改、删除cookie(最全)

      一.cookie介绍 1.cookie的本来面目 HTTP协议本身是无状态的.什么是无状态呢,即服务器无法判断用户身份.Cookie实际上是一小段的文本信息(key-value格式).客户端向服务 ...

随机推荐

  1. 单例&多线程

    单例模式,最常见的就是饥饿模式,和懒汉模式,一个直接实例化对象,一个在调用方法时进行实例化对象.在多线程模式中,考虑到性能和线程安全问题,我们一般选择下面两种比较经典的单例模式,在性能提高的同时,又保 ...

  2. 微信小程序开发——苹果手机领取卡券出现参数错误(安卓正常)

    异常描述: 微信小程序领取卡券,调用 wx.addCard 接口,安卓手机正常调起领取卡券界面,苹果手机.微信开发者工具中均出现“参数错误”,如图: 异常解析: 安卓手机能正常调起领取界面,那就说明领 ...

  3. 【zipkin】链路追踪

    1,安装zipkin:https://zipkin.io/pages/quickstart.html 推荐使用docker去安装zipkin服务,下载安装执行都有了.缺点是下载要等待一段时间 2,使用 ...

  4. Json、JavaBean、String等互转

    Json.JavaBean.String等互转 本文介绍简单的Json.JavaBean.String互换(下文JavaBean简称Object对象,这里不是很严谨) 转换关系如下: 其中String ...

  5. 六.Spring与RabbitMQ集成--HelloWorld

    spring对RabbitMQ做了很好的集成,我们称之为spring AMQP,其官方文档写得十分详尽,文档地址:https://docs.spring.io/spring-amqp/referenc ...

  6. swift 数组 的一些快速方法

    1. filter (过滤器):返回符合条件的一个数组 let arr = [1,5,6,7,10,0] //写法1 let arr1 = arr.filter { (item) -> Bool ...

  7. Django创建模型,迁移数据

    1.在models.py文件中添加代码 class notice(models.Model): notice_title = models.CharField(max_length=255) noti ...

  8. linux命令学习之:rm

    rm命令可以删除一个目录中的一个或多个文件或目录,也可以将某个目录及其下属的所有文件及其子目录均删除掉.对于链接文件,只是删除整个链接文件,而原有文件保持不变. 注意:使用rm命令要格外小心.因为一旦 ...

  9. 13-linux定时任务不起作用到的问题解决办法

    基本操作下面这篇: centos定时任务-不起作用- 没指明路径!!! 最大的问题是路径问题,以及权限问题. 用定时任务执行某些脚本是出现一系列问题,一步一步解决. 问题一:定时任务没反应: 查看日志 ...

  10. 线特征---LineMatching原理(四)

    参考文章:An efficient and robust line segment matching approach based on LBD descriptor and pairwise geo ...