Jquery Validate - 无法使验证程序正常工作

时间:2016-10-27 04:37:22

标签: javascript c# jquery asp.net jquery-validate

我有一个表单,我想验证,但我无法让验证器工作。

主页面在ASP.NET C#中。 我有主标签,并将在submitHandler上使用ajax标注来提交表单。 在表单标记内,我有一个div是一个jquery对话框。在div中,我有所有字段和按钮来提交表单(实际上是一个带有jquery .click事件的按钮)。

字段是这样的:

<input class="last_name_class modal__input__font" id="lastname" style="width:100%;" type="text" value="" runat="server" />

这是提交的按钮

<input class="btn_red" id="btn_Submit" type="button" value="CREATE CUSTOMER" />

单击该按钮时,会触发此按钮:

$('#btn_Submit').click(function () {
    $('#form1').valid();
});

这是我的validate()函数

 $('#form1').validate({

            rules: {
                <%=lastname.ClientID%> :{
                    required: true,
                },
                <%=firstnames.UniqueID%> :{
                    required: true,
                },
                <%=dob.UniqueID%> :{
                    required: true,
                },
                <%=addressline1.UniqueID%> :{
                    required: true,
                },
                <%=suburb.UniqueID%> :{
                    required: true,
                },
                <%=state.UniqueID%> :{
                    required: true,
                },
                <%=postcode.UniqueID%> :{
                    required: true,
                },

            },
            highlight: function(element, errorClass) {
                alert(element);
                $(element).addClass(errorClass);
                $(element.form).find("label[for=" + element.id + "]").addClass(errorClass);
            },
            unhighlight: function(element, errorClass) {
                $(element).removeClass(errorClass);
                $(element.form).find("label[for=" + element.id + "]").removeClass(errorClass);
            },
            submitHandler: function (form) {
                // do other things for a valid form
                //form.submit();

            }
        });

当我点击按钮时,似乎没有任何事情发生。我甚至无法判断是否触发了验证。

由于

1 个答案:

答案 0 :(得分:1)

Jquery验证适用于元素名称,请检查以下行:

<input class="last_name_class modal__input__font" id="lastname" style="width:100%;" type="text" value="" runat="server" />

没有指定名称。将其更改为:

<input class="last_name_class modal__input__font" id="lastname" name="lastname" style="width:100%;" type="text" value="" runat="server" />

再试一次。

相关问题