当前位置: 首页 > 知识库问答 >
问题:

使用表单输入设置Cookie

赵雪峰
2023-03-14

我正在尝试使用用户对web表单的输入创建一个用户名cookie。然而,它不起作用,我不知道为什么。你知道问题出在哪里吗?

<form>
    <input type="text" value="Enter Your Nickname" id="nameBox">
    <input type="button" value="Go!" id="submit" onClick="putCookie">
<form>


<script>
    var today = new Date();
    var expiry = new Date(today.getTime() + 30 * 24 * 3600 * 1000); // plus 30 days

    function setCookie(name, value){
        document.cookie=name + "=" + escape(value) + "; path=/; expires=" + expiry.toGMTString();
    }
    //this should set the UserName cookie to the proper value;
    function storeValues(form){
        setCookie("userName", form.submit.value);
        return true;
    }

</script>
</body>

共有2个答案

潘兴朝
2023-03-14

将表单更改为:

<form onsubmit="storeValues(this)">
<input type="text" value="Enter Your Nickname" id="nameBox">
<input type="submit" value="Go!" id="submit">
<form>

和storeValues(form)函数来执行以下操作:

{
   setCookie("userName", form.nameBox.value);
   return true;
}
蒋权
2023-03-14

你可以检查下面的代码,它可能会帮助你。

<html>
<head>
    <script>
var today = new Date();
  var expiry = new Date(today.getTime() + 30 * 24 * 3600 * 1000); // plus 30 days

  function setCookie(name, value)
  {
    document.cookie=name + "=" + escape(value) + "; path=/; expires=" + expiry.toGMTString();
  }
function putCookie(form)
                //this should set the UserName cookie to the proper value;
  {
   setCookie("userName", form[0].usrname.value);

    return true;
  }

  </script>
</head>
<body>
<form>
 <input type="text" value="Enter Your Nickname" id="nameBox" name='usrname'>
 <input type="button" value="Go!" id="submit" onclick="putCookie(document.getElementsByTagName('form'));">
</form>
</body>


</html>

虽然定义的函数名应该是putCookies而不是storeValues和函数调用,但您可以这样做:putCookie(document.getElementsByTagName('form'));

在函数定义中,可以从表单中获取cookie值,如下所示:setCookie(“username”,表单[0].usrname.value);

表单元素应具有属性:name='usrname'

它肯定会用form元素为用户名设置cookie。

 类似资料:
  • 例如,在ion-card-title中,它显示“John Doe”:{{item.payload.doc.data().name}}。但是在ion-input formControlName=“ename”的“value”属性中,相同的内容是空白的。 我订阅了firestore集合,因为多人使用该页面,当新的线索被添加或现有的线索被更改时,我需要实时更新。 我尝试了[(ngModel)]绑定,但无

  • 问题内容: 如何使用in 将 属性设置为表单? 像这样: 我希望属性设置为 日历的 此字段 __ 问题答案: 您可以从树枝模板执行此操作:

  • 问题内容: 我需要更改输入的插入符号位置,在该位置添加给定的数字(示例)。 是否可以执行类似此示例的操作? 我需要例如: 输入:1234。 因此插入符号的位置将为2。 新数字:9 决赛:12934 提前致谢。 问题答案: 我认为这类情况在指令中看起来更好。例如: 用法: 我从这个答案中使用了跨浏览器光标定位的功能。 演示:http : //plnkr.co/edit/5RSgzvyd8YOTaXP

  • 问题内容: 我目前正在使用YUI小工具。我也有一个Javascript函数来验证YUI为我绘制的输出: 这是我的: 正如您所看到的,我的问题是,如何将值设置为? 问题答案: 试试…为YUI 正常 与JQuery

  • 本文向大家介绍Flutter质感设计之表单输入,包括了Flutter质感设计之表单输入的使用技巧和注意事项,需要的朋友参考一下 FormField控件是单一表单字段,这个控件维护表单字段的当前状态,以便更新和验证错误能在UI中可见。TextField控件就是在FormField中包装了一个Input控件(后面的文章讲解),FormField维护输入的当前值,使您不需要自己管理它,更容易一次保存,重

  • 我试图找到一个完整的模式列表,用于通过HTML5表单验证各种类型的输入,特别是、、等等,但我找不到任何模式。目前,这些输入验证的内置版本远非完美(甚至不检查输入的内容是否是电话号码)。所以我想知道,我可以使用哪些模式来验证用户在输入中输入了正确的格式? 以下是一些默认验证允许不允许的输入的例子: 这个字段允许在@后面有不正确域的电子邮件,它允许地址以破折号或句号开始或结束,这也是不允许的。因此,是