选择特定选项后禁用 select2 上的选项
Disable options on select2 after specific one is selected
我在我的网站上使用了一个 select2,比方说有 10 个选项。所以我有这个js:
$("#myselect").select2({
maximumSelectionLength: 3
});
选择选项 1 后,我想禁用 Select2 上的所有其他选项。不知何故,就像跳过最大选择长度并突然只允许选择一个。但只有当我选择选项 1 时,这才应该发生。
例如,如果我选择选项 2,我只需要停用选项 1。
因此,一般来说,如果选择了其他内容,则需要将选项 1 从最多 3 个选择中排除,并且应该停用所有其他选项,以防在开始时被选中。我希望我在描述中说得很清楚。
这样的事情可能吗,怎么可能?
我试过这个>
if($("#myselect").val() == 1){
$("#myselect").find("option").each(function(){
if($(this).val() != 1){
$(this).attr("disabled", "disabled");
}
});
}
当选择选项 1 时,这实际上会将 disabled 属性添加到所有选项中,但不是在生成的 select2 HTML 代码上,仅在我的初始 HTML 上,因此它实际上不起作用。
提前致谢
在@karan3112建议之后,我添加了这个
$("#myselect").select2({maximumSelectionLength:3}).trigger('selection:update');
添加禁用属性后,工作正常。
相关文章:
- select2 使用 AJAX 加载数据不能选择任何选项
- 将select2限制为最多6个选项
- 如何按字母顺序对select2(jQuery插件)选项进行排序
- 重建select2选项而不丢失当前选择
- 使用Select2远程加载设置默认选项
- jQuery select2 动态选项
- select2 - 如果多个选项共享一个值,则返回不正确的选定选项
- 在 Select2 jquery 插件中取消选择选项
- 选择特定选项后禁用 select2 上的选项
- 使用X可编辑更改Select2的数据,而无需重新设置源选项
- 从 select2 选定选项中获取属性值
- 获取/设置在 Select2 倍数中单击的选项的值
- 在Select2中动态添加选项和选项组
- select2获取下拉选项数组列表
- Angular UI select2动态更改选项中的标记属性
- 如何使用Select2和远程数据禁用某些选项
- 清除Select2中的选定选项
- 使用切换或类似方式在Select2中显示/隐藏选项
- 将对象绑定到Select2选项
- select2.js-如何在选项元素内对齐两个项目