如何设置引导程序多选最小选择值和最大选择值
How to set bootstrap multiselect min selected and max selected value
我有一个带有5个选项的多选下拉列表。我想要用户一次最多可以选择3个选项,一次最多只能选择1个选项,如何做到这一点?
我的代码是这样的---
<select id="auditorview" multiple="multiple">
<option value="A1" >AHT</option>
<option value="A2" >Offers</option>
<option value="A3" >Handled</option>
<option value="A4" >Xyz</option>
<option value = "A5"> Abc</option>
</select>
<script type="text/javascript" >
$(document).ready(function () {
$('#auditorview').multiselect({
buttonWidth: '150px'
});
});
$('#auditorview').on('change',function(){
foo = $(this).val();
if (!$("#auditorview option:selected").length) {
$("#auditorview option[value='"+foo[0]+"']").prop('selected', 'selected');
}
if($("#auditorview option:selected").length===4){
alert("Please select max 3 option !!!");
$("#auditorview option [value selected='"+foo[2]+"']").prop('selected', `false);`
}
})
</script>
更新:(根据要求更新答案)
HTML:
<select id="demo" multiple="multiple">
<option value="">SELECT OPTION(S)</option>
<option value="Option1">Option-1</option>
<option value="Option2">Option-2</option>
<option value="Option3">Option-3</option>
<option value="Option4">Option-4</option>
<option value="Option5">Option-5</option>
<option value="Option6">Option-6</option>
</select><br/><br/>
Message: <label id="msg"></label>
JS:
$(document).ready(function () {
$("#msg").text("Select atleast One Option");
$("#demo option").on('click', function () {
if ($("#demo option:selected").length > 3) {
$("#msg").text('select Max 3 option at a time');
} else {
$("#msg").text("you selected: " + $("#demo option:selected").length);
}
});
});
JSFiddle演示
找到解决方案,它非常适合我——
<select multiple id="s">
<option>Option 1
<option>Option 2
<option>Option 3
<option>Option 4
</select>
<script>
$(document).ready(function () {
$('#s').multiselect();
})
jQuery("#s").on("change", function(){
var selectedOptions = $('#s option:selected');
if ((selectedOptions.length >= 3) && (selectedOptions.length > 1) ) {
// Disable all other checkboxes.
var nonSelectedOptions = $('#s option').filter(function() {
return !$(this).is(':selected');
});
var dropdown = $('#s').siblings('.multiselect-container');
nonSelectedOptions.each(function() {
var input = $('input[value="' + $(this).val() + '"]');
input.prop('disabled', true);
input.parent('li').addClass('disabled');
});
}
else if(selectedOptions.length <= 1){
var SelectedOptions = $('#s option').filter(function() {
console.log("1 select")
return $(this).is(':selected');
});
var dropdown = $('#s').siblings('.multiselect-container');
SelectedOptions.each(function() {
var input = $('input[value="' + $(this).val() + '"]');
input.prop('disabled', true);
input.parent('li').addClass('disabled');
});
}
else {
// Enable all checkboxes.
var dropdown = $('#s').siblings('.multiselect-container');
$('#s option').each(function() {
var input = $('input[value="' + $(this).val() + '"]');
input.prop('disabled', false);
input.parent('li').addClass('disabled');
});
}
});
相关文章:
- 如何根据DB中的值迭代选择并设置多个选项
- 显示基于下拉选择yii 2设置的字段
- 点击并选择时设置cookie
- AngularJS-选择,设置编辑/新建的默认值
- 如何在一个地方声明angular ui引导程序日期选择器设置
- 使用字符串选择器设置javascript属性
- 在选择中设置所选项目
- 为:gt或:lt选择器设置变量零基数
- 通过JQuery选择器设置CSS类属性:隐藏计数
- 查询选择器设置文本值
- 如何为日期选择器设置最小和最大日期
- 如何从指令链接内部为选择框设置选定值
- JavaScript:取消选择时设置单选按钮的背景(单选按钮组)
- jQuery / HTML5 选择并设置父项和所有子项的样式
- 如何将第一个选择选项设置为始终为空
- Jquery UI 日期选择器设置日期不适用于格式日期的动态更改
- 如何在我的 Web 表单中选择标记设置验证
- Django - 如果国家/地区字段等于美国,则发送 ajax 请求以将州选择器设置为美国州的元组
- 调用 java 方法,从 jsp 中的下拉列表选择中设置参数值
- 如何在更改时为引导日期时间选择器设置 minDate 和 maxDate