Javascript cookie不起作用
所以伙计们,我试着让这一切顺利。当我单击页面上的按钮时,它必须将数组转移到另一个页面才能显示它。我的功能有addProduct、showProduct、addItem和button work。但是数组中的数据不会传递到另一个页面。因此,当我单击页面a中的按钮时,会向该数组添加一个值。但是在B页上,它显示数组是空的Javascript cookie不起作用,javascript,cookies,session-cookies,Javascript,Cookies,Session Cookies,所以伙计们,我试着让这一切顺利。当我单击页面上的按钮时,它必须将数组转移到另一个页面才能显示它。我的功能有addProduct、showProduct、addItem和button work。但是数组中的数据不会传递到另一个页面。因此,当我单击页面a中的按钮时,会向该数组添加一个值。但是在B页上,它显示数组是空的 var products = new Array(); window.addEventListener("load", loadPage, false); windo
var products = new Array();
window.addEventListener("load", loadPage, false);
window.addEventListener("load", addButton, false);
window.addEventListener("load", showProducts, false);
function addButton() {
var button = document.getElementById("sell");
button.addEventListener("click", addItem, false);
}
function loadPage(){
getCookie();
}
function getCookie(){
var elements = document.cookie.split('=');
var products_cookie = elements[1].split('%');
for(var i=0;i < products_cookie.length-1;i++) {
var tmp = products_cookie[i].split('$');
addProduct(tmp[0], tmp[1], tmp[2]);
}
}
function setCookie(){
var date = new Date();
date.setTime(date.getTime()+(2592000)); //expire time = 30 dagen nadat cookie aangemaakt is
var expires = "; expires="+date.toGMTString()
var text = "";
for (var i = 0; i < products.length; i++){
text+= products[i][0] + "$" + products[i][1] + "$" + products[i][2] +"%"; // slaat naam $ aantal $ prijs op
}
document.cookie = "tradepoint"+text+expires;
}
function addProduct(pName, pAmount, pPrice){
var product = new Array(pName, parseInt(pAmount), pPrice);
products[products.length] = product;
setCookie();
}
function addItem(){
addProduct("andrej", 2, 1);
alert(products + " " + products.length);
}
function showProducts(){
if (products.length != 0){
document.getElementById("shopList").innerHTML = "<ul><li>Full</li></ul>";
}
else{
document.getElementById("shopList").innerHTML = "<ul><li>Empty</li></ul>";
}
}
cookie表示为名称=值对,您的setCookie函数没有做到您应该拥有document.cookie=tradepoint=+text+expires;注意=符号。
另外,如果设置了其他Cookie,则getCookie函数可能无法工作。是否针对本地主机进行测试?Cookie不会粘在TLD上。您至少需要x.y.z-在主机文件中使用127.0.0.1的别名来测试cookie相关代码
stackoverflow不会让我发布一个指向本地主机的url——我想是反跟踪技术吧 Cookie有什么问题?数组中的数据无法传递到其他页面。因此,当我单击页面a中的按钮时,会向该数组添加一个值。但是在B页上,它显示数组是空的。您当然可以调试cookie是否设置正确。那么,setCookie或getCookie哪个函数不起作用呢?您是否尝试过许多cookie处理库中的一个,而不是您自己制作的函数,这些函数似乎只依赖于一个cookie的外观?您可以投票支持我的评论并接受@Musa的答案,其中包括主要参数。我正在我的Web主机上测试这一点