我正在使用jquery cookie来传递我在第一页上点击的元素的值,以便在下一页上使用。我遇到的问题是,每当我将cookie设置为null时,该值都不会删除。它仍然存在。
我的第一页上的jquery脚本
<script>
$(document).ready(function() {
$("div.product-header").click(function() {
var index = $("div.product-header").index(this);
$.cookie("product_name", index);
//alert("product category: "+$.cookie("product_name"));
});
$("div.product-subheader").click(function() {
var index = $("div.product-subheader").index(this);
$.cookie("product_subheader", index);
//alert("product category item: "+$.cookie("product_subheader"));
});
});
</script>
将使用cookie的第二页脚本(在此页面上cookie正常工作)
<script>
$(document).ready(function () {
$(".product-contents").hide();
$('div.product-header').eq($.cookie('product_name')).addClass('active').next().show();
$('div.product-subheader').eq($.cookie('product_subheader')).css({fontWeight: 'bold', backgroundColor: '#eeeeee'});
$('div.product-header').click(function(){
$.cookie('product_name',$('div.product-header').index(this));
if( $(this).next().is(':hidden') ) {
$('div.product-header').removeClass('active').next().hide();
$(this).toggleClass('active').next().show();
}
return false;
});
});
</script>
但是当我尝试在第二页上使用脚本时;每当我使用 $ .cookie(“product_name”,null); 和 $ .cookie(“product_subheader”,null); cookie时,cookie都不会被删除没有删除
<script>
$(document).ready(function() {
$("div.product-header").click(function() {
$.cookie("product_name", null);
alert("cookie product category should be null not: "+$.cookie("product_name"));
var index = $("div.product-header").index(this);
$.cookie("product_name", index);
});
$("div.product-subheader").click(function() {
$.cookie("product_subheader", null);
alert("cookie product category item should be null not: "+$.cookie("product_subheader"));
var index = $("div.product-subheader").index(this);
$.cookie("product_subheader", index);
});
});
</script>
我上面代码的任何更正?
答案 0 :(得分:5)
您必须在设置cookie时指定路径。使用
$.cookie("product_name", index, { path: '/' });
这应该允许您从创建cookie的页面以外的页面中删除它。