zoukankan      html  css  js  c++  java
  • 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>  
  • 相关阅读:
    Template(模板)模式
    Android活动(Activity)创建及生命周期
    Android--SharedPreferences数据存储方案
    Adapter适配器模式--图解设计模式
    准时制生产(Just in Time,JIT)
    术语
    制造资源计划(Manufacturing Resource Planning,Mrp II)
    Angualr6表单提交验证并跳转
    Android PDA扫描枪广播接搜条码并使用
    Java统计代码行数
  • 原文地址:https://www.cnblogs.com/lhblogs/p/7491187.html
Copyright © 2011-2022 走看看