为什么不是't我的cookie存储

Why isn't my cookie storing?

本文关键字:我的 cookie 存储 为什么不      更新时间:2023-09-26

我试图在点击事件上设置一个cookie,看看用户是否真的点击了相应的按钮。按钮如下:

<a href="#/" class="button" id="modalBTN">Click here</a>

我设置cookie的js是:

function setCookie(cname, cvalue, exdays){
var d = new Date();
d.setTime(d.getTime() + (exdays*24*60*60*1000));
var expires = "expires =" + d.toGMTString();
document.cookie = cname +"="+ cvalue + ";" + expires;
}
function getCookie(cname){
  var name = cname + "=";
  var ca = document.cookie.split(';');
  for(var i =0; i<ca.length; i++){
    var c = ca[i];
    while(c.charAt(0) == '') c = c.substring(1);
    if(c.indexOf(name) == 0) return c.substring(name.length, c.length);
  }
  return "";
}

然后,我在点击事件上设置cookie:

$("#modalBTN").click(function(){
    var clicked = "clicked";
    setCookie("clicked", clicked, 30);
    console.log(clicked);
});

我的点击事件有效。当我console.log(单击)时,我看到了cookie值,但当我刷新页面时,cookie不再存在。

我通过检查

if(getCookie("clicked") != ""){
    //do something else
}

更新

当我调用getCookie("otherCookie")时,它就起作用了。但是,当我调用getCookie("点击")时,我会返回null。我一次只能吃一个吗?

试试这个:https://stackoverflow.com/a/24103596/5445351

您只能使用控制台来测试两个功能:createCookie&读取Cookie

执行:createCookie('ppkcookie','testcookie',7);

打开另一个页面,检查它是否还在:

var x = readCookie('ppkcookie')
if (x) {
    console.log("ok");
}

看看是否不是你的浏览器自动删除cookie。我试过Chrome和IE9。