onkeypress上的密码不匹配警报javascript

时间:2015-09-02 18:01:46

标签: javascript php validation

我想通过onkeypress()函数检查确认密码是否与密码匹配。它不起作用..一些像密码长度一样工作的部分必须是6个字符。但是,我有问题..当我输入确认密码的值时...即使在我输入密码文本中输入的密码值之后,它也显示div错误信息。请帮忙。这是我的代码。

<input type='password' class='Register-textbox Password' name="Password" onkeypress="RegistrationValidation()">

<input type='password' class='Register-textbox ConfirmPassword' name="ConfirmPassword"  onkeypress="RegistrationValidation()">

<div class="ShowPasswordNotMatchesError" style="display:none;">
  * Password Mismatch
</div>

<script>
function RegistrationValidation()
{
       var PasswordVal=$('.Password').val();
       var ConfirmPasswordVal=$('.ConfirmPassword').val();
       if(PasswordVal!=ConfirmPasswordVal)
       {
        $('.ShowPasswordNotMatchesError').show();
        }
}
</script>

1 个答案:

答案 0 :(得分:2)

当您使用jQuery时,请使用这些功能。我做了以下更改:

  1. 使代码不引人注目。
  2. 检查blur()上的正确性。
  3. 仅检查用户是否输入了内容。
  4. 删除了不必要的括号。
  5. 添加了反向条件。
  6. 尝试这种方式:

    &#13;
    &#13;
    $(function () {
      $(".Register-textbox").blur(function () {
        var PasswordVal=$('.Password').val();
        var ConfirmPasswordVal=$('.ConfirmPassword').val();
        if(PasswordVal != ConfirmPasswordVal && ConfirmPasswordVal.length > 0 && PasswordVal.length > 0)
          $('.ShowPasswordNotMatchesError').show();
        else
          $('.ShowPasswordNotMatchesError').hide();
      });
    });
    &#13;
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
    <input type='password' class='Register-textbox Password' name="Password" />
    <input type='password' class='Register-textbox ConfirmPassword' name="ConfirmPassword" />
    <div class="ShowPasswordNotMatchesError" style="display:none;">
      * Password Mismatch
    </div>
    &#13;
    &#13;
    &#13;