0

这是我的目标:

<!DOCTYPE html>
<html>
<body>
<script>
function changerScript()
{
var x = document.getElementById('changethis');
var y = document.getElementById('textinputter').value;
var z = '");';

if(y == "")
{
alert('Please enter your JavaScript code, then click the Submit button.');
}
else
{
x.innerHTML = ('javascript:void(document.cookie="' + y + z);
alert('JavaScript String Successfully Generated!');
}
}
</script>

<div align="center">
<input type="text" id="textinputter" />
<button type="button" onClick="changerScript()">Submit</button>
</div>

<br /><hr />

<div align="center">
<p id="changethis"></p>
</div>

</body>
</html>

现在,当您处理 Cookie 时,我知道有这样的工作:

javascript:void(document.cookie="Cookie=cookiedata;");

我如何像上面的示例一样添加多个 cookie,因为

javascript:void(document.cookie="Cookie=cookiedata; Cookie2=cookiedata2;");

不工作?

最初,我想粘贴 Cookie 数据 ( Cookie1=cookie1data; Cookie2=cookie2data; Cookie3=cookie3data;) 并让 JavaScript 为我生成代码,然后我可以将代码粘贴到 Chrome 的 URL 栏中并使用生成的 JavaScript 字符串设置 cookie。

4

1 回答 1

0

document.cookie一次只接受一个值。除此之外,document.cookie 还接受三个参数:cookie 名称、值和过期日期。

您可以从中获取 URL 参数location.search,然后您可以重用以下方法来设置 cookie。只需使用 for 循环结构来获取所有参数并为每个参数设置 cookie。

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;
}

有关更多信息,请参阅JavaScript Cookie

于 2013-04-17T20:18:35.097 回答