这是我的目标:
<!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>
现在当你处理Cookies时,我知道有这样的工作:
javascript:void(document.cookie="Cookie=cookiedata;");
如何在上面的例子中添加多个cookie,因为
javascript:void(document.cookie="Cookie=cookiedata; Cookie2=cookiedata2;");
不起作用?
最初,我想粘贴Cookie数据(Cookie1=cookie1data; Cookie2=cookie2data; Cookie3=cookie3data;
)并让JavaScript为我生成代码,然后我可以将代码粘贴到Chrome的网址栏中,并使用生成的JavaScript字符串设置Cookie
答案 0 :(得分:0)
document.cookie
一次只接受一个值。除了该document.cookie接受三个参数:cookie名称,值和过期日期。
您可以从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 Cookies。