今天在项目中用到了cookie,在使用过程中也遇到了一些问题。通过查找资料和尝试,问题终于解决了。在此做以记录,方便自己以后查阅,也希望可以帮助到和我遇到同一问题的朋友。
问题描述:建立母版页,同一模块的内容页放在同一文件夹下进行管理,以超链接的形式跳转到不同的内容页,同时创建cookie(cookie是定义在母版页中创建),例如:
<span style="font-size:12px;"></span><pre name="code" class="html">$.cookie("cookie", cookieId);
使用cookie
<span style="font-size:12px;">$.cookie("cookie");</span>
然而在获得cookie的值时,值却发生了混乱,同一个cookie在不同文件夹下的内容页却产生了不同的值,各自为政。cookie的值不能共享,分析后认为是在创建cookie时没有指定路径,所以当路径不同时就会产生不同的cookie值,达不到预期。解决方法:
$.cookie("cookie", cookieId, { path: "/"});
将路径设置为“ { path: "/"} ”表示在同域下同一个cookie只能有一个值。
这样设置后达到了预期效果。
注:因为我是在同域下访问cookie,故只设置了path属性,如果涉及到不同域的访问,那还要设置域(domain)属性。
参考文章:http://www.php100.com/html/program/jquery/2013/0905/6028.html