JavaScript中设置cookie的值

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方法是:

 

[javascript]  view plain  copy
 
  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方法是:

 

 

[javascript]  view plain  copy
 
  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.   
  8. }</span>  

转载于:https://www.cnblogs.com/lhblogs/p/7491187.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值