JQueryを使用してCookieを削除します。私はこれを試しました
$.cookie('name', '', { expires: -1 });
次に、ページを更新しますが、Cookieはまだそこにあります。
alert('name:' +$.cookie('name'));
どうして?ありがとう
JQueryでCookieを削除するには、値をnullに設定します。
$.cookie("name", null, { path: '/' });
編集:最終的な解決策は、Cookieにアクセスするたびにpath
プロパティを明示的に指定することでした。元の質問には記載されていませんでした)。解決策は以下の議論で発見されました。これは、正しくないにもかかわらず、この答えが受け入れられた理由を説明しています。
一部のバージョンjQ Cookieの場合、上記のソリューションはCookieを文字列nullに設定します。したがって、Cookieは削除されません。代わりに、以下に提案されているコードを使用してください。
$.removeCookie('the_cookie', { path: '/' });
これを試すことができます:
$.removeCookie('the_cookie', { path: '/' });
Jquery.cookieプラグインを使用せずにCookieを削除することもできます。
document.cookie = 'NAMEOFYOURCOOKIE' + '=; expires=Thu, 01-Jan-70 00:00:01 GMT;';
それはクッキーの誤解の問題です。ブラウザは、キーだけでなくオプションのパスとドメインを比較するためのCookie値も認識します。そのため、ブラウザーは、サーバー設定オプション(path = '/'; domain = 'mydomain.com')でキーが 'name'であり、キーがオプションのない 'name'であるCookie値の異なる値を認識します。
私のために働いたのみpath
が設定されたとき、すなわち:
$.cookie('name', null, {path:'/'})
これを試して
$.cookie('_cookieName', null, { path: '/' });
{path: '/'}はあなたのために仕事をします