为什么这个功能不会改变cookie?

时间:2018-04-27 17:09:47

标签: javascript html cookies session-cookies

我正在编码,但这似乎没有改变这个cookie。请给我建议。

function ChangeCookie(loginuser){
document.cookie = "user="+loginuser;
}

当我调用此函数时,此cookie似乎没有改变,相反,它什么都不做。我试图从这里走到

document.cookie = "user=loginuser"

但这也行不通。

编辑:我在控制台中尝试了这个并且它可以工作,但是这不适用于这个HTML。请告诉我这个HTML有什么问题

<?php
$cookie_name="user";
$cookie_value="anony"
setcookie($cookie_name, $cookie_value, time() + (86400 * 7), "/");
?>
<script>
function ChangeCookie(loginuser){
document.cookie = "user="+loginuser;
}
</script>
<html>
<head>
<title>Login</title>
</head>
<body>
<p>Please enter your username</p>
<form name="myForm" action="/index.html" onsubmit="return ChangeCookie(document.GetElementById("user"))" method="post">
<input type="text" id="user">
<input type="submit" value="Submit">
</form>
  </body>
  </html>

1 个答案:

答案 0 :(得分:0)

尝试一些调试,看看你传递给函数的是什么。一种方法是在控制台上写一些东西:

function ChangeCookie(loginuser) {
  // log the parameter value
  console.log(loginuser);
  document.cookie = "user="+loginuser;
}
// call the function immediately
ChangeCookie(loginuser);

//verify whether or not the value was set
console.log(document.cookie);

另一种方法是使用debugger

function ChangeCookie(loginuser) {
  debugger;
  document.cookie = "user="+loginuser;
}
ChangeCookie(loginuser);

如果在控制台打开的情况下运行上述操作,它应该允许您查看传入的变量的值。您还可以通过控制台访问该变量。