感谢任何帮助!
HTML
<div class="col-md-4">
<form>
<div class="form-group has-feedback">
<select id="variationType[]" name="variationType[]" class="multiple-select form-control" data-minselected="1" data-placeholder="Select one or more options" multiple required>
<option value="1">Option 1</option>
<option value="2">Option 2</option>
<option value="4">Option 3</option>
<option value="8">Option 4</option>
</select>
<small class="help-block with-errors"></small>
<span class="form-control-feedback" aria-hidden="true"></span>
</div>
<button class="btn btn-primary btn-block">Valid</button>
</form>
</div>
JS
$('.multiple-select').multiselect({
buttonContainer: '<div class="multiselect-group"></div>',
buttonClass: 'form-control',
nonSelectedText: !$(this).attr('data-placeholder') ? 'Selecionar' : $(this).attr('data-placeholder'),
numberDisplayed: 1
});
$.fn.validator.Constructor.INPUT_SELECTOR = ':input:not([type="submit"], button):enabled';
$('form').validator({
delay: 200,
focus: false,
feedback: {
success: 'glyphicon glyphicon-ok-sign',
error: 'glyphicon glyphicon-exclamation-sign'
},
custom: {
minselected: function($el) {
console.log(!!$.trim($el.val()));
return !!$.trim($el.val());
}
},
errors: {
minselected: "Select one or more options"
}
});
小提琴示例: https://jsfiddle.net/9ts4nvhw/4/
非常感谢
答案 0 :(得分:1)
这可能是最新验证器代码中的新语法(我遇到验证器v0.11.9)。
自定义验证器应返回的是错误消息,而不是字段是否有效(true / false)。根本不再需要errors对象(虽然我猜你可以包含它 - 似乎没有什么区别)。
例如:
$('form').validator({
delay: 200,
focus: false,
feedback: {
success: 'glyphicon glyphicon-ok-sign',
error: 'glyphicon glyphicon-exclamation-sign'
},
custom: {
minselected: function($el) {
console.log(!!$.trim($el.val()));
return !!$.trim($el.val()) && "Select one or more options";
}
}
});