我只是在提交表单时尝试设置cookie,但似乎函数设置了 每次刷新页面上的cookie
function Sub(){
var exdays="3000";
var value="asdf";
var exdate=new Date();
var c_name="asdf";
exdate.setDate(exdate.getDate() + exdays);
var c_value=escape(value) + ((exdays==null) ? "" : "; expires="+exdate.toUTCString());
document.cookie=c_name + "=" + c_value;
alert("asdf"); //just for debugging
return true; }
</SCRIPT>
<form id="myform" action="http://localhost" onsubmit="return Sub();">
答案 0 :(得分:1)
浏览器会针对同一网址的每个请求发送Cookie,直到删除,过期或会话Cookie为止,直到创建新会话为止。
您正在设置过期时间,因此它不是会话Cookie。因此,无论您是否点击了某些内容,您的浏览器都会将每个网页加载的Cookie发送到该网址。
尝试删除过期日期,清除Cookie缓存,然后重新启动浏览器。
在您提交一次之前,Cookie不会出现。然后cookie将一直存在,直到您关闭会话(重新启动浏览器)。
答案 1 :(得分:1)
您的意思是每次重新加载时cookie都会被更改,或者cookie是否存在?
我在这里假设您正在使用cookie将一些信息与表单一起发送到服务器。
Cookie是持久的,并且会一直存在,直到它们被更改为止。在表单中包含隐藏字段并更改其值,而不是设置cookie可能更有意义。