Javascript 如何为multiselect box实现jQuery验证规则?
这是我的html选择框(选项将由ajax调用提供),带有multiselect函数和验证Javascript 如何为multiselect box实现jQuery验证规则?,javascript,jquery-validate,multi-select,Javascript,Jquery Validate,Multi Select,这是我的html选择框(选项将由ajax调用提供),带有multiselect函数和验证 <select id="chapterId" name="chapter[]" class="multiselect-ui form-control" multiple="multiple"></select> $('#chapterId').multiselect({ includeSelectAllOption: true }); var $valid
<select id="chapterId" name="chapter[]" class="multiselect-ui form-control" multiple="multiple"></select>
$('#chapterId').multiselect({
includeSelectAllOption: true
});
var $validator = $("#orderPaper").validate({
rules: {
'chapter[]': {required: true, min: 1},
},
messages: {
'chapter[]': {required: "Please select chapter"},
}
});
$(“#chapterId”)。多选({
includeSelectAllOption:true
});
var$validator=$(“#订单”).validate({
规则:{
'第[]章:{必需:true,min:1},
},
信息:{
'章节[]':{必填:“请选择章节”},
}
});
此外,还正确地包括multiselect.js。
每次选择或未选择“请选择章节”天气章节时,它都会显示错误。
我还检查了章节的选择是否正确,我还可以获得所选章节ID。
但是每次都会显示jquery错误。您只需要使用自定义验证规则。试试这个
var $validator = $("#orderPaper").validate({
rules: {
'chapter[]': {required: true, needsSelection: true},
},
messages: {
'chapter[]': {required: "Please select chapter", needsSelection: "Please select chapter"},
}
});
$.validator.addMethod("needsSelection", function (value, element) {
var count = $(element).find('option:selected').length;
return count > 0;
});
您是否尝试在jquery验证程序定义中使用chapter而不是chapter[]是的,@fxlaroix,但之后它不会验证chapter字段。也许您可以检查jquery的validate()演示页面,但我看到它们直接在标记输入中使用属性。。。2美分;)因此,看起来您正在使用插件来更改multi-select元素的外观。如果是这种情况,则原始的
select
将被隐藏,并且不会被验证。您将不得不花时间构建一个更好、更完整的演示,包括足够的HTML来重现这个问题。请修复您问题中的代码,并包括一个JSFIDLE演示。经过一些测试,我发现它只与ajax加载选项有关。哦,是的,谢谢@Virendra Jadeja。它对我有用:)。