You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何手动启用或禁用BsMultiSelect下拉选择菜单

BsMultiSelect手动启用菜单失效解决方案

操作未生效的核心原因是BsMultiSelect有独立的内部状态管理,仅修改原生select元素的disabled属性不会同步到组件内部的状态标识,修改后组件不会识别到状态变更。

你可以直接调用组件内置的setDisabled方法完成状态切换,不需要手动修改DOM属性、调用update系列方法,组件内部会自动处理状态同步和视图刷新:

禁用菜单的简化写法

// 移除所有选项
removeOptions(select);
// 直接调用组件方法禁用
select.bsMultiSelect.setDisabled(true);

启用菜单的正确写法

// 新增选项
addOptions(select);
// 直接调用组件方法启用
select.bsMultiSelect.setDisabled(false);

如果你想要保留原来的写法,只需要在移除disabled属性后同步更新组件内部配置即可:

addOptions(select);
select.removeAttribute('disabled');
// 新增这行同步组件内部配置
select.bsMultiSelect.options.disabled = false;
select.updateData();
select.updateAppearance();

内容的提问来源于stack exchange,提问作者Jay

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.01 19:27:04