我的页面有问题。我正在尝试将JSON cookie传递到另一个页面,但是在提交并重定向到另一个页面之后,然后获取了cookie。该页面似乎没有从上一页获取Cookie。
我试图返回上一页并检查我的cookie是否被删除或替换,但是在检查cookie仍然存在之后。
我正在我的网站上使用此插件: https://github.com/js-cookie/js-cookie
这是我要发送的Cookie:
Cookies.set("make_enquiry_data", {
"Full Name": $('#FullName').val(),
"Email Address": $('#EmailAddress').val(),
"State": $('#BillingState').val(),
"Country": $('#BillingCountry').val(),
"Mobile Number": $('#Cellphone').val(),
"Post Code": $('#BillingZip').val(),
"Enquiry": $('#CAT_Custom_387456').val(),
"Enquire Now As": $('input[name=CAT_Custom_387457]').serializeArray(),
"Make/Model": $('#CAT_Custom_387458').val(),
"Year": $('#CAT_Custom_387459').val(),
"Kms": $('#CAT_Custom_387460').val()
});
Cookies.set("test_variable", "test me!!!");
在下一页上,我正在使用以下代码查看Cookie:
Cookies.get();
但是不幸的是,我想要的cookie不在最新页面上。
答案 0 :(得分:1)
Cookie只能存储文本,不能存储对象。您首先需要将对象编码为JSON(通过使用JSON.stringify()
):
Cookies.set("make_enquiry_data", JSON.stringify({
"Full Name": $('#FullName').val(),
"Email Address": $('#EmailAddress').val(),
"State": $('#BillingState').val(),
"Country": $('#BillingCountry').val(),
"Mobile Number": $('#Cellphone').val(),
"Post Code": $('#BillingZip').val(),
"Enquiry": $('#CAT_Custom_387456').val(),
"Enquire Now As": $('input[name=CAT_Custom_387457]').serializeArray(),
"Make/Model": $('#CAT_Custom_387458').val(),
"Year": $('#CAT_Custom_387459').val(),
"Kms": $('#CAT_Custom_387460').val()
}));
然后,为了在检索Cookie的值时找回对象,请使用JSON.parse()
:
JSON.parse( Cookies.get('make_enquiry_data') );
答案 1 :(得分:-2)
您可能想要使用类似的方法来获取特定的Cookie,
Cookies.get('thatcookie');