【问题标题】:Detecting if a specific cookie exist检测是否存在特定的 cookie
【发布时间】:2011-12-03 12:10:17
【问题描述】:

我正在开发一个已经有很多 cookie 的网站。现在我想做的是检测名为“login”的cookie是否存在。这是我的代码:

if (document.cookie.indexOf("login") >= 0) {
    alert("login cookie exist");
}
else if(document.cookie.indexOf("login") < 0 ){
    alert("no login cookie");

}
else{

}

该代码有什么问题? indexOf 方法将返回 -1 或 0,这取决于 cookie 是否存在,对吗?在这两种情况下,它都会返回我 -1 。我的if 声明错了吗?

【问题讨论】:

  • 你试过alert(document.cookie.indexOf("login"));吗?
  • 你检查过确实有一个 cookie 集吗?同样,由于 else 子句与 true 子句完全相反,您可以删除 else if {...} 并直接使用 else {alert('no cookie');}
  • 了解 javascript cookie:w3schools.com/js/js_cookies.asp
  • 请不要链接到 W3Schools;见W3FoolsQuirksMode 提供了一个更好的关于 cookie 的页面。
  • 我忘了提到,使用我的开发人员工具栏,我可以准确地看到我拥有的所有 cookie,并且登录信息就在那里,我尝试做 alert(document.cookie.indexOf("login" ));但是当cookie在那里时它给我-1,当cookie不存在时给我-1

标签: javascript cookies


【解决方案1】:

我会推荐使用 jQuery 的 jQuery Cookie 插件。它使处理 cookie 变得超级简单和轻松。

https://github.com/carhartl/jquery-cookie

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-10-15
    • 2012-05-17
    • 2011-03-07
    • 1970-01-01
    • 2019-03-05
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多