我在删除包含多个值的Cookie时遇到了一些问题 - 值由(*)分开。无法删除具有多个值的Cookie
如果cookie只包含一个值,我可以很容易地删除它,但只要有多个值,我必须按两次按钮才能删除cookie ... - 我需要在脚本中定义cookie值,如果是这样,如何...?
$('a.home').click(function (e) {
$.cookie('breadcrumbs', null, {path:'/'});
});
我在删除包含多个值的Cookie时遇到了一些问题 - 值由(*)分开。无法删除具有多个值的Cookie
如果cookie只包含一个值,我可以很容易地删除它,但只要有多个值,我必须按两次按钮才能删除cookie ... - 我需要在脚本中定义cookie值,如果是这样,如何...?
$('a.home').click(function (e) {
$.cookie('breadcrumbs', null, {path:'/'});
});
我假定您使用的是jquery.cookie.js。如果是这样,它工作在这里很好外汇9.0.1
$.cookie('foo', 'bar*baz');
//"foo=bar*baz"
$.cookie('foo');
//"bar*baz"
$.cookie('foo', null);
//"foo=null; expires=Tue, 31 Jan 2012 11:34:16 GMT"
$.cookie('foo');
//null (actual null, not string "null")
的插件使得内部使用的encode/decodeURIComponent,从而影响*字符。
望着$ .cookie API,你应该能够做到
$.cookie('breadcrumbs', null, {path:'/', raw: true});
,防止decodeURIComponent正在对你的价值运行(你可能不得不sepecify原料:创建cookie时太真)
我完全错过了encodeURI文档,*实际上是不受其影响的字符之一,所以这个答案不可能有任何帮助 – wheresrhys 2012-02-01 11:52:43
另外,在删除时,没有设置值。给出一个空值,消极过期。因此,即使'*'要编码,它应该对删除有效。 – JAAulde 2012-02-01 12:32:35
是的,我做了 - 但是我没有在每一页上使用它 - 因此,我不得不按下按钮两次... - 现在我工作的方式... :-) – 2012-02-01 12:02:30