我有一个表单,我想验证,但我无法让验证器工作。
主页面在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();
}
});
当我点击按钮时,似乎没有任何事情发生。我甚至无法判断是否触发了验证。
由于
答案 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" />
再试一次。