我有一个Home.aspx和一个AboutUs.html页面。当我点击我的AboutUs页面的注销时,当我回到主页时,我的cookie没有被清除。 下面是我用来保存的一段代码&删除cookie
var SaveCookie = function(zNameP, zValueP, IsPersistenceP)
{
IsPersistenceP = typeof IsPersistenceP !== 'undefined' ? IsPersistenceP : false;
if (IsPersistenceP)
SavePersistenceCookie(zNameP, zValueP);
else
document.cookie = zNameP + "=" + escape(zValueP);
}
function SavePersistenceCookie(zNameP, zValueP)
{
var ExpirationDate = new Date();
ExpirationDate.setDate(ExpirationDate.getYear() + 1); //1 year
var CookieValueL = escape(zValueP) + "; expires=" + ExpirationDate.toGMTString();
document.cookie = zNameP + "=" + CookieValueL;
}
function DeleteCookie(zNameP)
{
document.cookie = zNameP + '=; expires=Thu, 01-Jan-70 00:00:01 GMT;';
}
我在aboutus.html中清除后,在主页上获取了cookie值。我在做什么?
答案 0 :(得分:0)
由于Cookie定义的path
部分,删除Cookie可能是有趣的业务。如果您在cookie过期时设置的path
与设置的原始cookie的path=/;
不匹配,那么它将不会清除它。您应该在删除Cookie时添加path
(见下文),并使用Firebug / Chrome开发工具/网站开发人员工具栏/其他任何内容仔细检查浏览器中的Cookie path=/;
。
这是我删除cookie的JS功能。请注意我如何指定function delCookie(name) {
document.cookie = name + '=; path=/; expires=Thu, 01-Jan-70 00:00:01 GMT;';
}
:
/
如果由于某种原因,在创建cookie时,其path
的值与domain
不同,则此函数将无效。遗憾的是,无法从JavaScript访问Cookie信息,例如path
或{{1}}。