带有密码字段的jQuery表单验证

带有密码字段的jQuery表单验证,jquery,jquery-validate,Jquery,Jquery Validate,我试图验证我的表单,出于某种原因,它总是验证true,即使我没有在密码字段的字段中输入任何值。如果我将控件更改为文本,则如果我没有在文本框中输入任何内容,验证将生效。下面是我的代码。我搞不清楚我到底做错了什么 <form id="frmChangePassword" action="http://localhost/PatientAccount" method="post"> <div class="row"><input type="password" i

我试图验证我的表单,出于某种原因,它总是验证true,即使我没有在密码字段的字段中输入任何值。如果我将控件更改为文本,则如果我没有在文本框中输入任何内容,验证将生效。下面是我的代码。我搞不清楚我到底做错了什么

<form id="frmChangePassword" action="http://localhost/PatientAccount" method="post">
    <div class="row"><input type="password" id="txtPWD" name="txtPWD" placeholder="" style="" class="text focus" value=""></div>
    <div class="row"><input type="password" id="txtReEnterPWD" name="txtReEnterPWD" placeholder="" style="" class="text" value=""></div>
    <div class="row"><input type="Button" ID="btnChangePassword" Name="btnChangePassword" STYLE="" Class="btn-submit" VALUE="Change Password" onClick="javascript:ValidateResetPassword();"></div>
</form>

<script>
function ValidateResetPassword() {
    $("#frmChangePassword").validate({
        rules: {
            "txtPWD": { required:true },
            "txtReEnterPWD": { required:true }
        },
        messages: {
            "txtPWD": { required: "Please enter Password" },
            "txtReEnterPWD": {required: "Please re-enter password" }
        }
    });

    if ($("#frmChangePassword").valid()) {
        hashPassword();
    }
}
</script>

函数ValidateResetPassword(){
$(“#frmChangePassword”).validate({
规则:{
“txtPWD”:{required:true},
“txtrenterpwd”:{required:true}
},
信息:{
“txtPWD”:{必需:“请输入密码”},
“txtrenterpwd”:{必需:“请重新输入密码”}
}
});
if($(“#frmChangePassword”).valid(){
hashPassword();
}
}

你有一大堆小问题

1) 您不需要在submit按钮上使用内联JavaScript来调用Validate插件。插件通过其
submitHandler
回调函数在内部处理这些问题

$(document).ready(function() {

    $("#frmChangePassword").validate({
        rules: {
            "txtPWD": {
                required: true
            },
            "txtReEnterPWD": {
                required: true
            }
        },
        messages: {
            "txtPWD": {
                required: "Please enter Password"
            },
            "txtReEnterPWD": {
                required: "Please re-enter password"
            }
        },
        submitHandler: function (form) { 
            hashPassword();
            form.submit();
            // alert('valid form'); // for demo
            // return false; // for demo
        }
    });

});

2) 提交按钮应该是一个
,因为您有一大堆小问题

1) 您不需要在submit按钮上使用内联JavaScript来调用Validate插件。插件通过其
submitHandler
回调函数在内部处理这些问题

$(document).ready(function() {

    $("#frmChangePassword").validate({
        rules: {
            "txtPWD": {
                required: true
            },
            "txtReEnterPWD": {
                required: true
            }
        },
        messages: {
            "txtPWD": {
                required: "Please enter Password"
            },
            "txtReEnterPWD": {
                required: "Please re-enter password"
            }
        },
        submitHandler: function (form) { 
            hashPassword();
            form.submit();
            // alert('valid form'); // for demo
            // return false; // for demo
        }
    });

});

2) 提交按钮应该是
,您可以编辑原始问题以添加该信息。您还可以使用编辑器中的按钮轻松格式化代码。什么是
validate
方法?不要在评论区发布代码。您可以在帖子中格式化代码并将代码粘贴到那里。validate()是jQuery验证插件提供的一种方法。这是一个非常复杂和庞大的方法,不能粘贴在StackOverflow问题中更重要的是为需要了解验证API的任何人提供链接。感谢提供代码格式化技巧。我还是个新手。下次我会记住的。你可以编辑你的原始问题来添加这些信息。您还可以使用编辑器中的按钮轻松格式化代码。什么是
validate
方法?不要在评论区发布代码。您可以在帖子中格式化代码并将代码粘贴到那里。validate()是jQuery验证插件提供的一种方法。这是一个非常复杂和庞大的方法,不能粘贴在StackOverflow问题中更重要的是为需要了解验证API的任何人提供链接。感谢提供代码格式化技巧。我还是个新手。下次我会记住的。谢谢斯帕奇。谢谢你,斯帕奇。这很有帮助。