我使用jquery验证最初隐藏的表单,但即使字段为空也会提交表单
$(document).ready(function () {
jQuery("#name").validate({
expression: "if (VAL) return true; else return false;",
message: "* Please enter name"
});
});
我正在为表格的ajax submition做这件事。
$("#send").click(function (e) {
e.preventDefault();
var name = $('#name').val();
$.ajax({
// ajax submition
)};
});
答案 0 :(得分:1)
试试这个......并使用<form>
id代替验证功能。
$(document).ready(function () {
jQuery("#formid").validate({
ignore:'',
rules:{
name:{
required:true
}
},
messages:{
name:{
required:'* Please enter name'
}
}
});
});
我认为您使用的是较新版本的jQuery验证器插件,默认情况下会忽略隐藏的元素。
在回复已更新问题时,您可以执行此操作
$("#send").click(function (e) {
e.preventDefault();
var name = $('#name').val();
if(name.length > 0){ //if length is greater than 0 then only fire ajax else show the error
$.ajax({
// ajax submition
)};
}else
//show error
alert('Name not found');
}
}