【问题标题】:Checking Password onsubmit提交时检查密码
【发布时间】:2012-01-03 08:04:25
【问题描述】:

我有一个基本的注册表单:

<form action="adduser" method="post" onsubmit='passwordCheck()'>
    Email Address: <input type="email" name="email" required autocomplete="on" placeholder="fr@star.com"/><br/>
    Username: <input type="text" name="username" maxlength=25 required placeholder="JoyfulSophia"/><br/>
    Password: <input type="password" name="password" id='password' onkeydown='checkPassword()' maxlength=30 required placeholder="**********" />
    Password (Again): <input type='password' id='pass_repeat'/>
    <br/>
    <br/>
    <input type="submit" value="Send" /> <input type="reset">
</form>

因此,当提交表单时,它会调用 passwordCheck(),它会针对容易猜到的密码进行测试,而不是重复相同的密码等。如果有错误,它会将错误(如果有)放在 &lt;p&gt;(未显示)中。 checkPassword() 有效并且错误显示正确,但是表单仍然提交,而我读过的 JS 文档说如果 onsubmit 返回 false,则表单不应该提交。

为什么checkPassword()返回false时表单提交?此外,在密码输入中的每次击键时都不会调用 checkPassword()。

【问题讨论】:

    标签: javascript forms passwords onsubmit


    【解决方案1】:

    添加返回

    onsubmit='return passwordCheck()'
    

    【讨论】:

      【解决方案2】:

      应该是

      <form ... onsubmit="return passwordCheck();">
      

      至于 onkeydown,请检查您的 checkPassword() 函数是否实际被调用。让它做一个 alert() 或类似的东西。

      【讨论】:

        猜你喜欢
        • 2011-03-21
        • 2017-11-13
        • 2015-10-26
        • 2020-09-02
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2018-05-19
        • 1970-01-01
        相关资源
        最近更新 更多