Jquery, удалить файлы cookie

Я хочу использовать JQuery для удаления файлов cookie; Я попробовал это

$.cookie('name', '', { expires: -1 });

Затем я обновляю страницу, и файл cookie все еще существует:

alert('name:' +$.cookie('name'));

Почему? Благодаря

Ответ 1

Чтобы удалить файл cookie с помощью JQuery, установите значение null:

$.cookie("name", null, { path: '/' });

Изменить: Конечным решением было явно указать свойство path при обращении к куки файлу, поскольку OP обращается к куки файлу с нескольких страниц в разных каталогах, и, таким образом, пути по умолчанию были разными ( это не было описано в первоначальном вопросе). Решение было открыто в обсуждении ниже, что объясняет, почему этот ответ был принят, несмотря на то, что он не был правильным.

Для некоторых версий jQ cookie решение выше установит cookie на строку null. Таким образом, не удаляется файл cookie. Вместо этого используйте код, как предложено ниже.

$.removeCookie('the_cookie', { path: '/' });

Ответ 3

Вы также можете удалить файлы cookie без использования jquery.cookie plugin:

document.cookie = 'NAMEOFYOURCOOKIE' + '=; expires=Thu, 01-Jan-70 00:00:01 GMT;';

Ответ 4

это проблема непонимания cookie. Браузеры распознают значения cookie не только для ключей, но и для сравнения пути и домена. Таким образом, браузеры распознают различное значение, значение cookie которого является "именем" с параметром настройки сервера (путь = '/'; domain = 'mydomain.com'), а ключ - "имя" без опции.

Ответ 5

Попробуйте это

 $.cookie('_cookieName', null, { path: '/' });

{путь: '/'} выполняет эту работу для вас

Ответ 6

Работала для меня только, когда был установлен path, т.е.:

$.cookie('name', null, {path:'/'})

Ответ 7

То, что вы делаете, правильно, проблема в другом месте, например. cookie снова устанавливается как-либо при обновлении.