Javascript cookie,设置多个cookie



我试图创建一个应用程序,它采用多个值与cookie,但似乎我的setCookie函数不接受多个,而是在我输入新值时替换每个值,因此showCookie函数只显示输入的最后值。

setCookie:

function setCookie(c_name,value,exdays)
{
var exdate=new Date();
exdate.setDate(exdate.getDate() + exdays);
var c_value=escape(value) + ((exdays==null) ? "" : "; expires="+exdate.toUTCString());
document.cookie=c_name + "=" + c_value;
}

storeValues功能:

function storeValues()  
{
var note= document.getElementById("note").value;

 setCookie("note",note,365);

 alert("Cookies stored!")
 }

显示功能:

function show()
{
 var note= document.getElementById("note").value;

 alert("Note:" + note  );
}
function showall()
{
var allcookies = document.cookie;
 alert("All Cookies : " + allcookies );
// Get all the cookies pairs in an array
cookiearray  = allcookies.split(';');
// Now take key value pair out of this array
for(var i=0; i<cookiearray.length; i++){
  name = cookiearray[i].split('=')[0];
  value = cookiearray[i].split('=')[1];
  alert("Key is : " + name + " and Value is : " + value);
}
}

您需要将赋值操作符(=)更改为连接和赋值复合操作符(+=)

如果cookie密钥存在,覆盖它也是一个好主意。因此,我建议将cookie值转换为对象,修改它们,然后序列化回cookie字符串。

相关内容

  • 没有找到相关文章

最新更新