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. Lattice绘图

    lattice包提供了用于可视化单变量和多变量数据的一整套图形系统.许多用户转向使用lattice包是因为它能很容易地生成网格图形.网格图形能够展示变量的分布或变量之间的关系. 例:data(mtca ...

  2. 10 个经典PHP函数

    这篇文章主要介绍了php中的10个比较经典的函数,不太常见,可以满足有特殊需求的朋友 1. sys_getloadavg() sys_getloadavt()可以获得系 统负载情况.该函数返回一个包含 ...

  3. UITableViewCell高度自适应的关键点

    iOS开发中对于UITableViewCell高度自适应的文章已经很多很多,但如果cell内容比较复杂,刚使用autolayout配置自使用时还是总不能一次性成功. KEY POINT 这里只说设置的 ...

  4. [原创] Windows下Eclipse连接hadoop

    1 下载hadoop-eclipse-plugin :我用的是hadoop-eclipse-plugin1.2.1 ,百度自行下载 2 配置插件:将下载的插件解压,把插件放到..\eclipse\pl ...

  5. Get Docker CE for Ubuntu

    Docker 分为开源免费的 CE(Community Edition)版本和收费的 EE(Enterprise Edition)版本. 配置 Docker 的 apt 源 1. 安装包,允许 apt ...

  6. 【反思】一个价值两天的BUG,无论工作还是学习C语言的朋友都看看吧!

    博文原创,转载请联系博主! 使用C语言也有两个年头了,BUG写出来过不少,也改过不少BUG.但是偏偏就是有这么一个BUG让我手头的项目停工了两天,原因从百度找到谷歌,资料从MAN手册找到RFC也没有找 ...

  7. EntityFramework 学习 一 三种开发模式

    Entity Framework支持3种不同的开发方法 1.Code First 2.Model First 3.Database First Code First 使用Code First开发模式, ...

  8. Neutron Callback System

    用于core and service components之间的通信,传递resource的lifecycle events (e.g. before creation, before deletio ...

  9. Codeforces 429B Working out:dp【枚举交点】

    题目链接:http://codeforces.com/problemset/problem/429/B 题意: 给你一个n*m的网格,每个格子上有一个数字a[i][j]. 一个人从左上角走到右下角,一 ...

  10. unity的一些重要技巧(转)【整理他人的东西】

    刚开始学习Unity3D时间不长,在看各种资料.除了官方的手册以外,其他人的经验也是非常有益的.偶尔看到老外这篇文章,觉得还不错,于是翻译过来和大家共享.原文地址: http://devmag.org ...