Javascript 如何使document.cookie正常工作?
我一直在尝试为当前页面设置一个简单的cookie,但它似乎不起作用(它不显示我保存了cookie,并且使用document.cookie发出了任何警报。cookie显示时没有文本Javascript 如何使document.cookie正常工作?,javascript,cookies,Javascript,Cookies,我一直在尝试为当前页面设置一个简单的cookie,但它似乎不起作用(它不显示我保存了cookie,并且使用document.cookie发出了任何警报。cookie显示时没有文本 Cookies = {}; Cookies.cookiefile = blue; Cookies.cookiekey = 5; function Cookies.save(){ document.cookie= Cookies.cookiefile+"="+Cookies.cookiekey+";max-age="
Cookies = {};
Cookies.cookiefile = blue;
Cookies.cookiekey = 5;
function Cookies.save(){
document.cookie= Cookies.cookiefile+"="+Cookies.cookiekey+";max-age="+60*60*24*10+";path=/";
alert(document.cookie);
}
现在,您已经显示了实际的代码,似乎有一个脚本错误使代码无法运行。这段代码:
function Cookies.save(){...}
声明函数的语法不正确。您应该检查浏览器错误控制台或调试控制台中的脚本错误,它可能会向您显示这些错误。您可以使用以下格式:
Cookies.save = function() {...}
这部分答案是在OP提供任何代码之前提供的 下面是一组用于处理cookie的实用函数。如果看不到您的代码,我们就无法真正知道您做得不对,但是如果您使用这些函数并尝试从允许的页面访问cookie,它应该可以工作
// createCookie()
// name and value are strings
// days is the number of days until cookie expiration
// path is optional and should start with a leading "/"
// and can limit which pages on your site can
// read the cookie.
// By default, all pages on the site can read
// the cookie if path is not specified
function createCookie(name, value, days, path) {
var date, expires = "";
path = path || "/";
if (days) {
date = new Date();
date.setTime(date.getTime()+(days*24*60*60*1000));
expires = "; expires=" + date.toGMTString();
}
document.cookie = name + "=" + value + expires + "; path=" + path;
}
function readCookie(name) {
var nameEQ = name + "=";
var ca = document.cookie.split(';');
for (var i = 0; i < ca.length; i++) {
var c = ca[i];
while (c.charAt(0)==' ') c = c.substring(1,c.length);
if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
}
return null;
}
function eraseCookie(name) {
createCookie(name, "", -1);
}
//createCookie()
//名称和值是字符串
//days是cookie过期之前的天数
//路径是可选的,应以前导“/”开头
//并且可以限制您站点上的哪些页面可以
//读饼干。
//默认情况下,站点上的所有页面都可以读取
//如果未指定路径,则返回cookie
函数createCookie(名称、值、天数、路径){
var日期,到期日=”;
路径=路径| |“/”;
如果(天){
日期=新日期();
date.setTime(date.getTime()+(天*24*60*60*1000));
expires=“;expires=“+date.togmString();
}
document.cookie=name+“=”+value+expires+”;path=“+path;
}
函数readCookie(名称){
变量nameEQ=name+“=”;
var ca=document.cookie.split(“;”);
对于(变量i=0;i
那么你在做什么,我们应该猜测你的代码是什么样子吗?函数Cookies.save(){
不是正确的语法。它应该是Cookies.save=function(){
。阅读错误控制台中的语法错误。没有理由回答这个问题,因为基本用法是“不使用它”。(另外,嗯,试试cookie教程,对属性的赋值也显示出普遍缺乏以下现有代码。)