使用jquery删除所有Cookie并设置为new

yas*_*yas 13 html javascript cookies jquery

我想要做的是当用户访问页面test.html时,删除他之前访问过的页面中的cookie,如test1.html,test2.html等,并设置新的cookie.

是否有更简单的方法一次删除所有以前设置的cookie(我有100个页面每次一个一个地声明)与jquery?

我不知道除了逐个删除然后设置新的任何其他方式:

$.cookie('test1', 'test1', { expires: -1, path: '/' });//deleting cookies from test1.html
$.cookie('test2', 'test2', { expires: -1, path: '/' });//deleting cookies from test2.html

$.cookie('test', 'test', { expires: 30, path: '/' });//setting new cookies 
Run Code Online (Sandbox Code Playgroud)

谢谢

meg*_*wac 20

遵循jquery-cookie规范:

1)你调用$ .cookie(),它应该返回当前页面上的所有cookie.
2)只需迭代并删除如下:

var cookies = $.cookie();
for(var cookie in cookies) {
   $.removeCookie(cookie);
}
Run Code Online (Sandbox Code Playgroud)

注意:删除cookie时,必须传递用于设置cookie的完全相同的路径,域和安全选项,除非您依赖于默认选项.


Nee*_*raj 7

var cookies = document.cookie.split(";");
for(var i=0; i < cookies.length; i++) {
    var equals = cookies[i].indexOf("=");
    var name = equals > -1 ? cookies[i].substr(0, equals) : cookies[i];
    document.cookie = name + "=;expires=Thu, 01 Jan 1970 00:00:00 GMT";
}
Run Code Online (Sandbox Code Playgroud)

摘自如何使用jquery删除所有cookie