如下代码...第一个老是不成功,第二个没有domain就可以...
哪里写错了吗??
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>new page</title>
<script type="text/javascript" language="javascript">
// <![CDATA[
window.onload = function() {
setCookie("abc" , "def", 9, "/", "127.0.0.1");
setCookie("ijk" , "xyz", 9, "/");
alert(document.cookie);
} function setCookie(name, value) {
var exdate = new Date();
exdate.setDate(exdate.getDate()+(arguments.length>2?arguments[2]:7));
var cookie = name+"="+encodeURIComponent(value)+"; expires="+exdate.toGMTString();
cookie += ((arguments.length>3?("; path="+arguments[3]):"") + (arguments.length>4?("; domain="+arguments[4]):""));
document.cookie = cookie;
}
// ]]>
</script>
</head>
<body>
</body>
</html>
哪里写错了吗??
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>new page</title>
<script type="text/javascript" language="javascript">
// <![CDATA[
window.onload = function() {
setCookie("abc" , "def", 9, "/", "127.0.0.1");
setCookie("ijk" , "xyz", 9, "/");
alert(document.cookie);
} function setCookie(name, value) {
var exdate = new Date();
exdate.setDate(exdate.getDate()+(arguments.length>2?arguments[2]:7));
var cookie = name+"="+encodeURIComponent(value)+"; expires="+exdate.toGMTString();
cookie += ((arguments.length>3?("; path="+arguments[3]):"") + (arguments.length>4?("; domain="+arguments[4]):""));
document.cookie = cookie;
}
// ]]>
</script>
</head>
<body>
</body>
</html>
解决方案 »
- 如何控制setInterval()的开始和停止
- 【【当往列表框中添加option时,背景图被覆盖???】】
- 关于对象内 创建 this 的问题(应用于Enum)
- 如何通过鼠标的当前坐标,来定位在哪一个元素?
- 关于调用javascript的问题
- 改变iframe高度时脚本出错,不过结果正确。
- 请问个降低耦合的问题,很简单的,请大家帮帮忙,急急急急急急急!!!!!
- emu(ston)!孟老师等!请进!(分不多了,完了结分)
- 一个问题!!关于textarea!!求助!!
- createDocumentFragment能与 insertAdjacentHTML连用吗
- 如何在一个html里响应另一个html里的js呢
- javascript控制歌词同步的例子
但如果把后面的domain=abcdefg.com去掉就可以...哪里出问题了吗??
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<script type="text/javascript" language="javascript">
// <![CDATA[
window.onload = function() {
document.cookie = "key=value;domain=abcdefg.com";
alert(document.cookie);
}
// ]]>
</script>
</head>
<body>
</body>
</html>
主楼的代码是可以的
但必须访问
http://127.0.0.1/xxx.htm
才可以,而我之前测试的时候都是访问http://hostname/xxx.htm的方式
而二楼的代码必须把domain修改为"domain=.abcdefg.com",且必须是以http://abcdefg.com/xxx.htm的方式访问了(此时只能先修改机器上的hostd文件了)
感谢google!!不过它搜到的是百度空间里的文章(—_—b)
http://hi.baidu.com/%CD%F5%D7%D36%BA%C5/blog/item/93272f3577082a87a71e127c.html
感谢此人的文章,不过他文章里说的localhost的方式无法存储cookie,原因和我二楼的代码一样,domain必须是"domaim=.localhost"才行
顺便一说,domain里一定不能有端口号,如果默认端口不是80的情况下,使用window.location.host来获取domain的话,会有端口号的
代码
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<script type="text/javascript" language="javascript">
// <![CDATA[
window.onload = function() {
document.cookie = "testcookie=cookie;domain=.localhost";
alert(document.cookie);
};
// ]]>
</script>
</head>
<body>
</body>
</html>
否则抛异常
比如,你的js domain设置成abc.com
那么你的网站域名就可以使用abc.com,www.abc.com,以及所有二级域名、三级域名等
同样,你放在127.0.0.1下测试或者localhost,它都会报错
不过,新打开的这个IE窗体(覆盖了之前的),仍然可以读取到原来的cookie值,怎么回事呢?
注:由于情况特殊,不能设置expires让cookie过期。