清除按钮点击时的jQuery验证

Clear jQuery validation on button click

本文关键字:jQuery 验证 按钮 清除      更新时间:2023-09-26

我有一个简单的表单。当我点击"提交"时,我使用jQuery验证方法验证控件。当点击"取消"时,我在清除验证时遇到麻烦。

下面是我的代码:

<script type="text/javascript">
//Custom method
$.validator.addMethod("valueNotEquals", function (value, element, arg) {
    return arg != value;
}, "This field is required.");
var jqueryValidator;
$(document).ready(function () {
    $("#<%= btnSave.ClientID %>").click(function () {   
        jqueryValidator = $('#masterForm').validate({
            rules: {
                <%=gddTank.UniqueID %>: {
                    valueNotEquals: "-1"
                },
                <%=gddCanister.UniqueID %>: {
                    valueNotEquals: "-1"
                },
                <%=gddCane.UniqueID %>: {
                    valueNotEquals: "-1"
                },
                <%=gddStraw.UniqueID %>: {
                    valueNotEquals: "-1"
                }
            },
            highlight: function (element) {
                $(element).closest('.control-group').removeClass('success').addClass('error');
            },
            success: function (element) {
                $(element).closest('.control-group').removeClass('error').addClass('success');
            }
        });
    });
    $("#<%= btnCancel.ClientID %>").click(function () {   
        jqueryValidator.resetForm();
    });
});
</script>

任何帮助都非常感谢。

谢谢,Wilky .

$("#<%= btnCancel.ClientID %>").click(function () {   
        jqueryValidator.resetForm(); 
        $('#masterForm').get(0).reset();
});

您可能会认为resetForm方法会为您处理这一切,但由于某种原因,您必须采取额外的步骤,在表单本身调用reset

试试这个:

$("#<%= btnCancel.ClientID %>").click(function () {   
    jqueryValidator.resetForm();
    $(jqueryValidator.currentForm).find('input:not([type="button"],[type="submit"]),textarea').val('');
});