我正在使用jQuery Validate 1.11.1和jQuery 1.11.3。
我正在构建某种具有多种输入和表单元素的调查网站。
jQuery(function($){
$('#NewDate').datepicker(
{
showOn: 'button',
buttonImageOnly: true,
buttonText:"",
buttonImage: 'img/calendar.png',
onClose: function(date) {
if(date !="") {
alert(date);
}
}
})
})
$(function () {
$.validator.setDefaults({
errorElement: 'div',
errorClass: 'alert alert-danger',
errorPlacement: function(error, element) {
error.insertAfter(element.closest('.panel'));
}
});
$("#screenForm").validate({
debug: true,
focusInvalid: false,
rules: {
options: {
required: true
},
options2: {
required: true
},
checkbox1: {
required: true
},
checkbox1other: {
required: {
depends: function(element) {
console.log($("#checkboxOther:checked").length == 1);
return $("#checkboxOther:checked").length == 1;
}
}
},
a_SQhyu5q__3__491: {
required: true
},
a_SQk8wb8__3__491: {
required: true
}
},
groups: {
matrix: "a_SQhyu5q__3__491 a_SQk8wb8__3__491"
},
messages: {
checkbox1other: "Please fill in details"
},
success: function (element) {
element.remove();
},
highlight: function(element) {
$(element).closest('.panel').removeClass('<%=panelColor%>');
$(element).closest('.panel').addClass('panel-danger');
},
unhighlight: function(element) {
$(element).closest('.panel').removeClass('panel-danger');
$(element).closest('.panel').addClass('<%=panelColor%>');
}
});
});
和a_SQhyu5q__3__491
显示在同一面板中。如果两者都未填写,我会收到两条错误消息,显示这些字段是必需的。由于它们位于同一个面板中,因此我希望在发生这种情况时只显示一条错误消息,而不是两条。
我需要对“必需错误”的数量进行某种限制,因此这绝不会超过一个。
我已经尝试过groups选项,但当填写了两个输入中的一个时,错误消息中没有显示第二个也应填写的错误消息。
对于选项,a_SQk8wb8__3__491
和options2
仍然有自己的消息,不应与其他消息组合。只是checkbox1
和a_SQhyu5q__3__491
应该合并错误信息。
答案 0 :(得分:0)
刚才发现群组选项对我有用。 jQuery Validate的一些外部问题或问题(不确定)使它看起来不起作用。当我使用.valid()函数检查manualy时,立即显示错误消息。