表单包含以下代码以防止提交多个表单:
function AllowNoDups() { var cookie_ls = document.cookie; if (cookie_ls.indexOf(document.location) > -1) {
alert("You've already submitted a free meter request. Thank you for your interest! ");
return false; } else { document.cookie = 'username=' + value; + 'expires=' + var now = new Date(); var time = now.getTime(); time += 3600 * 1000; now.setTime(time); document.cookie = 'username=' + value + '; expires=' + now.toGMTString() + '; path=/';; + 'path = /' document.cookie = "; path=/newform.php; expires=Sun, 1-Jan-2040 00:00:01 GMT;"; return true;};};
虽然代码有效,但我宁愿将cookie设置为在24小时后过期,而不是指定cookie过期的日期。我将如何实现这一目标?谢谢!
答案 0 :(得分:1)
您可以使用max-age
属性。请参阅此维基百科article。
作为绝对值设置cookie过期的替代方法 日期/时间,RFC 6265允许使用Max-Age属性来设置 cookie的到期时间为未来的秒数,相对而言 到浏览器收到cookie时。
答案 1 :(得分:0)
使用此功能并根据您的要求传递参数。
function callcookie(name,value,days){
if(days){
var d=new Date();
d.setTime(d.getTime()+(days*24*60*60*1000));
var expires = "; expires="+d.toGMTString();
}
else var expires = "";
document.cookie = name+"="+value+expires+"; path=/";
}