我的问题似乎很容易,但我无法使其发挥作用;我想设置一个名为“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>
答案 0 :(得分:1)
您应该更改正则表达式以将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
)。
答案 1 :(得分:0)
使用以下功能设置和获取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);
}