我这个学期的网页设计课上有一个项目(我是新手)我在空闲时间做了一些小工作。我一直在尝试使用cookie和JavaScript。我们课堂上没有完全覆盖cookies,我一直在搜索并寻找当前问题的答案。如果您曾经回复过本网站上有关JavaScript和/或HTML的任何内容,我可能会阅读它。正如我的标题所说,我遇到的问题是我的cookie似乎没有保存。在第一次加载时,代码工作正常,然后我重新加载页面,它不会调用cookie值。 这是我的cookie脚本:
var name;
if(document.cookie)
{
var q1=unescape(document.cookie);
var q2=q1.search("name");
if(q2!=(-1))
{
var n=str.split("name=");
var n1=n[1];
var n2=n1.split(";");
var q=n2[0];
name=q;
}
else
{
name=window.prompt("Please enter your name.");
document.cookie="name="+escape(name);
}
}
else
{
name=window.prompt("Please enter your name.");
document.cookie="name="+escape(name);
}
在加载页面的其余部分后使用:
document.writeln(name+"text stuff");
如果cookie中的值不正确,我创建了这个通过HTML中的按钮调用的函数:
function wrongPerson()
{
document.cookie="name=hooper; expires=Thu, 01 Jan 1970 00:00:01 GMT";
location.reload();
}
很抱歉这么长的帖子,但我想确保社区尽可能多的信息。此外,抱歉格式不佳。我不知道如何使用我的整个代码并让系统允许它。
答案 0 :(得分:1)
您需要在Cookie脚本上设置过期。如果您没有将过期日期存入您的cookie,它将被识别为“一次性cookie”。重载或其他任何东西后,它都会消失。
将过期日期定为2014年1月1日星期三00:00:01 GMT
这是我个人的意见,但我宁愿使用window.location.href = window.location.href;
代替location.reload();