jquery,删除cookies
我想用JQuery来删除cookies; 我试过这个
$.cookie('name', '', { expires: -1 });
然后刷新页面,cookie仍然存在:
alert('name:' +$.cookie('name'));
为什么? 谢谢
要使用JQuery删除cookie,请将该值设置为null:
$.cookie("name", null, { path: '/' });
编辑:最后的解决scheme是显式指定path
属性,每当访问cookie,因为OP访问来自不同目录中的多个页面的cookie,因此默认path是不同的(这在原来的问题中没有描述)。 解决scheme在下面的讨论中被发现,这解释了为什么这个答案被接受 – 尽pipe不正确。
对于某些版本的jQ cookie,上面的解决scheme将cookie设置为空string。 因此不删除cookie。 改为使用下面build议的代码。
$.removeCookie('the_cookie', { path: '/' });
你可以试试这个:
$.removeCookie('the_cookie', { path: '/' });
来源: https : //github.com/carhartl/jquery-cookie#readme
您也可以不使用jquery.cookie插件删除cookie:
document.cookie = 'NAMEOFYOURCOOKIE' + '=; expires=Thu, 01-Jan-70 00:00:01 GMT;';
这是误解cookie的问题。 浏览器认识到cookie值不只是键也比较选项path和域。 因此,浏览器识别不同的值,哪个cookie值的键是'名称'与服务器设置选项(path='/';域='mydomain.com')和密钥是'名称'没有选项。
尝试这个
$.cookie('_cookieName', null, { path: '/' });
{path:'/'}为你做好这项工作
只有在path
设置的时候为我工作,例如:
$.cookie('name', null, {path:'/'})
你在做什么是正确的,这个问题是在别的地方,例如cookie在刷新时被重新设置。