Создайте файл cookie, если (и только если) это еще не существует

StackOverflow https://stackoverflow.com/questions/2824021

  •  26-09-2019
  •  | 
  •  

Вопрос

Я бы хотел:

  1. Проверьте, существует ли Cookie с именем «Запрос»
  2. Если да, то ничего не сделайте
  3. Если нет, создайте файл cookie "со значением 1

Примечание: я использую jQuery 1.4.2 и jquery plugin.

У кого-нибудь есть какие-то предложения о том, как я могу это сделать?

Это было полезно?

Решение

if($.cookie('query') === null) { 
    $.cookie('query', '1', {expires:7, path:'/'});
}

Кроме того, вы можете написать функцию обертки для этого:

jQuery.lazyCookie = function() {
   if(jQuery.cookie(arguments[0]) !== null) return;
   jQuery.cookie.apply(this, arguments);
};

Тогда вам нужно только написать это только в вашем клиентском коде:

$.lazyCookie('query', '1', {expires:7, path:'/'});

Другие советы

это??

$.cookie('query', '1'); //sets to 1...
$.cookie('query', null); // delete it...
$.cookie('query'); //gets the value....

if ($.cookie('query') == null){ //Check to see if a cookie with name of "query" exists
  $.cookie('query', '1'); //If not create a cookie "query" with a value of 1.
} // If so nothing.

что еще ты хочешь??

Подобно ответу Джейкоба, но я предпочитаю проверять для неопределенного.

if($.cookie('query') == undefined){
    $.cookie('query', 1, { expires: 1 });
}
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top