当(且仅当)cookie 尚不存在时创建它

发布于 2024-09-01 04:27:16 字数 288 浏览 6 评论 0原文

我想要:

  1. 检查是否存在名称为“query”的 cookie
  2. 如果存在,则不执行任何操作
  3. 如果不存在,则创建一个值为 1 的 cookie“query”

注意:我正在使用 jQuery 1.4.2 和 jQuery cookie 插件

有人对我如何做到这一点有任何建议吗?

I want to:

  1. Check to see if a cookie with name of "query" exists
  2. If yes, then do nothing
  3. If no, create a cookie "query" with a value of 1

Note: I am using jQuery 1.4.2 and the jQuery cookie plugin.

Does anyone have any suggestions as to how I can do this?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

离鸿 2024-09-08 04:27:16
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:'/'});
if($.cookie('query') === null) { 
    $.cookie('query', '1', {expires:7, path:'/'});
}

Alternatively, you could write a wrapper function for this:

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

Then you'd only need to write this in your client code:

$.lazyCookie('query', '1', {expires:7, path:'/'});
小耗子 2024-09-08 04:27:16

这??

$.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.

你还想要什么?

this??

$.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.

what more do you want??

你穿错了嫁妆 2024-09-08 04:27:16

与雅各布斯的答案类似,但我更喜欢测试未定义的情况。

if($.cookie('query') == undefined){
    $.cookie('query', 1, { expires: 1 });
}

Similar to Jacobs answer but I prefer to test for undefined.

if($.cookie('query') == undefined){
    $.cookie('query', 1, { expires: 1 });
}
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文