首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >javascript cookie,设置多个cookie

javascript cookie,设置多个cookie
EN

Stack Overflow用户
提问于 2013-01-04 08:40:27
回答 1查看 3.6K关注 0票数 1

我正在尝试创建一个应用程序,它使用cookies接受多个值,但是我的setCookie函数似乎没有接受多个值,而是在我输入新的值时替换每个值,因此showCookie函数只显示输入的最后一个值。

setCookie:

代码语言:javascript
复制
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函数:

代码语言:javascript
复制
function storeValues()  
{
var note= document.getElementById("note").value;



 setCookie("note",note,365);


 alert("Cookies stored!")

 }

显示函数:

代码语言:javascript
复制
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);
}
}
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-01-04 08:55:18

您需要将赋值运算符(=)更改为串联赋值复合运算符(+=)。

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

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14149542

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档