好的我有一个javascript cookie,它可以在网站的当前页面(www.example.com/about.php)上运行,但是在网站的索引页面(www.example.com)上,它无效。它说没有设置cookie。
我想在另一个页面中显示cookie值。有任何想法吗?
这是我的代码: -
在www.example.com/about.php页面上点击按钮事件: -
var cookievalue="testingCookie";
document.cookie="stateNcity=" + cookievalue;
var a=document.cookie;
alert(a);
并在www.example.com中: -
<div id="abcd">click</div>
$("#abcd").on("click",function()
{
var cookie_string = document.cookie;
if (cookie_string.length !=0)
{
alert(cookie_string);
}
else
{
alert('cookie is not set');
}
});
答案 0 :(得分:0)
在设置Cookie时,您应指定过期时间和路径。如果您没有指定路径,则只能通过当前页面访问cookie。
参见参考:http://www.w3schools.com/js/js_cookies.asp
例如:
var cookievalue,
cookieexpire,
cookiepath,
date;
cookievalue ="testingCookie";
date = new Date();
date.setTime(date.getTime() + 3600 ); // will last 3600 seconds (1 hour)
cookieexpire = date.toGMTString();
cookiepath = "/"; // accessible from every web page of the domain
document.cookie="stateNcity=" + cookievalue + "; expires=" + cookieexpire + "; path=" + cookiepath;
这是非常明显的,但是当用户导航到www.example.com时,只有当他/她首次访问www.example.com/about.php并触发点击时,才会生成cookie。
纯JavaScript中的Cookie管理并非易事。
当您使用jquery
标记问题时,我建议将其用于Cookie管理,请参阅https://stackoverflow.com/a/1458728/1579327