cookie 与 session 是网页开发中常用的信息存储方式。Cookie是在客户端开辟的一块可存储用户信息的地方;Session是在服务器内存中开辟的一块存储用户信息的地方.JavaScript是运行在客户端的脚本,因此一般是不能够设置Session的,因为Session是运行在服务器端的,而cookie是运行在客户端的,所以可以用JS来设置cookie。

在ITOO项目中,系统需要页面之间的传值,现在假设页面A,和页面B,页面B需要页面A的一个参数,才可以进行后面的操作,那么我们就需要将页面A参数值保存到cookie中,页面B通过Js获取参数值,进行后续操作。

js写入Cookie代码:

<span style="font-size:18px;">//两个参数,一个是cookie的名子,一个是值
function SetCookie(name, value)
{
//定义一天
var days = 1;
var exp = new Date();
//定义的失效时间,
exp.setTime(exp.getTime() + days * 24 * 60 * 60 * 1000);
//写入Cookie ,toGMTstring将时间转换成字符串。
document.cookie = name + "=" + escape(value) + ";expires=" + exp.toGMTString; }</span>

  //escape 方法返回一个包含了 charstring 内容的字符串值( Unicode 格式)。所有空格、标点、重音符号以及其他非 ASCII 字符都用 %xx 编码代替,其中 xx 等于表示该字符的十六进制数。例如,空格返回的是 "%20" 。字符值大于 255 的以 %uxxxx 格式存储

js读取Cookie代码

<span style="font-size:18px;">//读取cookies
function getCookie(name)
{ //匹配字段
var arr,reg=new RegExp("(^| )"+name+"=([^;]*)(;|$)"); if(arr=document.cookie.match(reg)) return (arr[2]);
else
return null;
}</span>

  //一组cookie值是 name=value,name前面可能是开头(^)也可能是空格( ),匹配开头或者空格就是  "(^| )"
  然后匹配name所以是  "(^| )"+name,然后匹配等号所以是 "(^| )"+name+"= , 
  然后匹配value,value本身通过分号结尾的,所以这里表示不是分号的一个字符串,正则为 [^;]*,到这里就是
  "(^| )"+name+"=([^;]*),最后value的结尾是一个分号或者字符串结束,那么是 (;|$)
  至此,整个匹配cookie的正则完成了,就是 "(^| )"+name+"=([^;]*)(;|$)"

我们除了在Js中写入cookie中之外,还可以在Contraller中将值写入Cookie中。

写入Cookie方法是:

  1. <span style="font-size:18px;"> //将试卷和课程ID存入cookie中
  2. HttpCookie cookie = new HttpCookie("PaperID");
  3. cookie.Values.Add("PaperId", ExamPaperId.ToString());
  4. cookie.Values.Add("ConsorID", ExamPaper.CourseId);
  5. //添加到浏览器中
  6. Response.AppendCookie(cookie);</span>

读取Cookie方法是:

  1. <span style="font-size:18px;">HttpCookie newCookie = Request.Cookies["PaperID"];
  2. //定义变量用于接收试卷ID
  3. string strPaperId="";
  4. if (newCookie != null)
  5. {
  6. strPaperId = newCookie.Values["PaperId"];
  7. }</span>

JavaScript中设置cookie的值的更多相关文章

  1. Javascript中关于cookie的那些事儿

    Javascript-cookie 什么是cookie? 指某些网站为了辨别用户身份.进行session跟踪而储存在用户本地终端上的数据(通常经过加密).简单点来说就是:浏览器缓存. cookie由什 ...

  2. JavaScript中的cookie

    cookie本身没什么可介绍的,但是cookie在JavaScript中,有很多需要注意的 首先,cookie在JavaScript中,是window.document对象的一个属性,所以访问cook ...

  3. JavaScript中的Cookie 和 Json的使用

    JavaScript中的Cookie 和 Json的使用 JSON JSON(JavaScript Object Notation)是一种轻量级的数据交换格式.采用的是完全独立于编程语言的文本格式来存 ...

  4. javascript 中设置window.location.href跳转无效问题解决办法

    javascript 中设置window.location.href跳转无效问题解决办法 问题情况 JS中设置window.location.href跳转无效 原因是 a标签的href跳转会执行在wi ...

  5. JavaScript中对象转换为原始值的规则

    JavaScript中对象转换为原始值遵循哪些原则? P52 对象到布尔值对象到布尔值的转换非常简单:所有的对象(包括数字和函数)都转换为true.对于包装对象亦是如此:new Boolean(fal ...

  6. javascript中的cookie,以及事件解析

    Cookie: 它的意思是在本地的客户端的磁盘上以很小的文件形式保存数据,Cookie的处理原则上需要在服务器环境下运行,目前Chrome不可以在客户端操作Cookie,其他浏览器均可以,   Coo ...

  7. JavaScript中document.cookie

    “某些 Web 站点在您的硬盘上用很小的文本文件存储了一些信息,这些文件就称为 Cookie.”—— MSIE 帮助.一般来说,Cookies 是 CGI 或类似,比 HTML 高级的文件.程序等创建 ...

  8. 浅谈JavaScript中的cookie

    什么是cookie?简单来说,cookie就是网站服务器存放在我们计算机上的一小段(一般大小不超过4KB)用来识别和记录用户的个人信息的文本.HTTP协议是一种没有“状态”的传输协议,也就是说,服务器 ...

  9. 1、JavaScript中的Cookie 用于存储 web 页面的用户信息。

    总结:每个浏览器都有一定数量限制的cookie.每个浏览器中,每一个cookie都有一个path路径,指向请求访问的网页. -------------------------------------- ...

随机推荐

  1. Oracle数据库体系结构(6)数据库归档重做日志文件管理

    归档重做日志文件的概念和选择 Oracle数据库能够把已经写满了的重做日志文件保存到一个或多个指定的离线位置,这种保存的文件为归档重做日志文件.通常情况下一个归档重做日志时一个被LGWR写满的重做日志 ...

  2. CSS知识点 2

    回顾: 浮动:是css中布局最多的一个属性 有浮动,一定要清除浮动浮动不是一个元素单独浮动,要浮动一起浮动 清除浮动四种方式:1.给父盒子添加高度,一般导航栏2.给浮动元素后面加一个空的块标签,  并 ...

  3. P4455 [CQOI2018]社交网络(矩阵树定理)

    题目 P4455 [CQOI2018]社交网络 \(CQOI\)的题都这么裸的吗?? 做法 有向图,指向叶子方向 \(D^{out}(G)-A(G)\) 至于证明嘛,反正也就四个定理,先挖个坑,省选后 ...

  4. slam kf

    一.KF 1.从概率来理解概率估计因为希望整个运动估计较长时间内最优,所以反而会用最新的知识去更新之前的状态,就比如在做完当前帧的位姿估计的时候,修改局部地图的路标点.如果站在之前的状态上来考虑,用的 ...

  5. Linux电源管理(3)-Generic PM之reboot过程【转】

    本文转载自:http://www.wowotech.net/pm_subsystem/reboot.html 1. 前言 在使用计算机的过程中,关机和重启是最先学会的两个操作.同样,这两个操作在Lin ...

  6. TCP相关知识总结

    参考: http://coolshell.cn/articles/11564.html http://coolshell.cn/articles/11609.html TCP头格式 接下来,我们来看一 ...

  7. php中删除数组的第一个元素和最后一个元素的函数

    对于一个php数组,该如何删除该数组的第一个元素或者最后一个元素呢?其实这两个过程都可以通过php自带的函数 array_pop 和 array_shift 来完成,下面就具体介绍一下如何来操作. ( ...

  8. SQL嵌套子查询和相关子查询的执行过程有什么区别(推荐)

    SQLServer子查询可以分为 相关子查询 和 嵌套子查询 两类.前提, 假设Books表如下: 类编号 图书名 出版社 价格 ----------------------------------- ...

  9. 自定义响应结构 AjaxResult()

    package com.dsj.gdbd.utils.ajax; import com.fasterxml.jackson.databind.JsonNode; import com.fasterxm ...

  10. 分享知识-快乐自己:Spring切入点的表达式和通知类型

    1.切入点的表达式 表达式格式: execution([修饰符] 返回值类型 包名.类名.方法名(参数)) 其他的代替: <!-- 完全指定一个方法 --> <!-- <aop ...