Javascript设置然后显示一个cookie值

Javascript set then display a cookie value

本文关键字:一个 cookie 设置 然后 显示 Javascript      更新时间:2023-09-26

我的问题似乎很容易,但我不能使它工作;我想设置一个名为"splash"的cookie变量,然后显示它(稍后我想在IF子句中使用)下面是我的代码:

<html>
   <head>
      <script type="text/javascript">
document.cookie =  "splash=" + encodeURIComponent("blue theme")
   var re = new RegExp(splash + "=([^;]+)");
    var value = re.exec(document.cookie);
    alert(value);
   </script>
   </head>
 <body>
 </body>
</html>

您应该更改正则表达式,将splash作为引号字符串的一部分。即使spash是你在cookie中使用的变量,它也不会自动成为一个javascript变量。

document.cookie = "splash=" + encodeURIComponent("blue theme")
var re = new RegExp("splash=([^;]+)");
var theme = re.exec(document.cookie)[1];

re.exec返回一个数组。第一个元素是整个匹配的字符串(包括splash=)。第二个是您的捕获组(blue%20theme)。

使用下列函数设置和获取Cookie

function createCookie(name, value, days)
{
    if(days)
    {
        var date = new Date();
        date.setTime(date.getTime() + (days * 24 * 60 * 60 * 1000));
        var expires = "; expires=" + date.toGMTString();
    }
    else
    {
        var expires = "";
    }
    var fixedName = '';
    name = fixedName + name;
    document.cookie = name + "=" + value + expires + "; path=/";
}
function getCookie(name) 
{
   var value = "; " + document.cookie;
   var parts = value.split("; " + name + "=");
   if (parts.length == 2) return parts.pop().split(";").shift();
}
function eraseCookie(name) 
{
    createCookie(name, "", -1);
}