我的问题是,当我按下按钮或输入我的last
和first
名称时,其中一个没有jquery验证。我如何使三个组合框具有1规则jquery验证而不是三个弹出?
当前输出:http://jsfiddle.net/5kcsn/12/
$('form').validate({
rules: {
fname: {
minlength: 3,
maxlength: 15,
required: true
},
lname: {
minlength: 3,
maxlength: 15,
required: true
},
month: {
required: true
},
day: {
required: true
},
year: {
required: true
}
},
highlight: function (element) {
$(element).closest('.form-group').addClass('has-error');
},
unhighlight: function (element) {
$(element).closest('.form-group').removeClass('has-error');
},
errorElement: 'span',
errorClass: 'help-block',
errorPlacement: function (error, element) {
if (element.parent('.input-group').length) {
error.insertAfter(element.parent());
} else {
error.insertAfter(element);
}
}
});
答案 0 :(得分:1)
您需要对元素进行分组。
groups: {
DateofBirth: "month day year"
},
在errorPlacement:
部分,添加此
errorPlacement: function (error, element) {
if (element.attr("name") == "day" || element.attr("name") == "month" || element.attr("name") == "year")
error.insertAfter(".dateWrap");
else
error.insertAfter(element);
if (element.parent('.input-group').length) {
error.insertAfter(element.parent());
} else {
error.insertAfter(element);
}
}
lname
问题,html中名字的输入字段为id="lname"
。因此,有两个<input>
元素的ID为lname
。参考: .validate() groups 。