2

我有一个简单的表格。当我单击“提交”时,我使用 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>

非常感谢任何帮助。

谢谢,威尔基。

4

2 回答 2

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

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

于 2013-05-17T16:07:16.470 回答
0

试试这个:

$("#<%= btnCancel.ClientID %>").click(function () {   
    jqueryValidator.resetForm();
    $(jqueryValidator.currentForm).find('input:not([type="button"],[type="submit"]),textarea').val('');
});
于 2013-05-17T10:14:03.250 回答