我有一个表单,我想验证,但我不能得到验证器工作。
的主页面是在ASP。净c#。我有主标签,并将在submitHandler上使用ajax callout来提交表单。在表单标签中,我有一个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();
}
});
当我点击按钮时,似乎什么也没有发生。我甚至不知道验证是否被触发了。
谢谢
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" />