我喜欢网站,当用户登录并检查时,请记住我"我写了cookies用户名。它工作得很好,但只是在某些浏览器中。 我在cookie用户名中写的代码:
document.cookie = "";
document.cookie = "username=" + username;
登录后我从cookies中检查用户名。 但在IE浏览器中,它无法正常工作。 关闭浏览器并再次打开他做饼干清除。 为什么会这样? 以及如何解决它?
答案 0 :(得分:1)
答案 1 :(得分:1)
我找到了很好的get / set cookies代码:
function setCookie(c_name,value,exdays)
{
var exdate=new Date();
exdate.setDate(exdate.getDate() + exdays);
var c_value=escape(value) +
((exdays==null) ? "" : ("; expires="+exdate.toUTCString()));
document.cookie=c_name + "=" + c_value;
}
function getCookie(c_name)
{
var i,x,y,ARRcookies=document.cookie.split(";");
for (i=0;i<ARRcookies.length;i++)
{
x=ARRcookies[i].substr(0,ARRcookies[i].indexOf("="));
y=ARRcookies[i].substr(ARRcookies[i].indexOf("=")+1);
x=x.replace(/^\s+|\s+$/g,"");
if (x==c_name)
{
return unescape(y);
}
}
}
来源:How do I create and read a value from cookie?
谢谢你heru-luin
答案 2 :(得分:1)
查看官方MS Developer Network文档 - &gt;的 https://msdn.microsoft.com/en-us/library/ms533693%28v=vs.85%29.aspx 强>
如果您未在Cookie上设置过期日期,则会在浏览器时过期 关闭 即可。如果您设置了到期日期,则会保存Cookie 浏览器会话。如果您在过去设置过期日期,则 cookie已删除。使用格林威治标准时间(GMT)格式指定 日期。
因此,如果您希望cookie在IE中持久存在,您基本上需要指定过期日期。上面链接中的示例:
// Create a cookie with the specified name and value.
function SetCookie(sName, sValue)
{
document.cookie = sName + "=" + escape(sValue);
// Expires the cookie in one month
var date = new Date();
date.setMonth(date.getMonth()+1);
document.cookie += ("; expires=" + date.toUTCString());
}
或者看到这个优秀的答案 - &gt; Using javascript to set cookie in IE