javascript - 如何在引导多选下拉菜单中启用/禁用下拉菜单
问题描述
let list1 = new Set();
let list2 = new Set();
document.querySelector('#list1_items').addEventListener('change', e => {
e.target.select ? list1.add(e.target.value) : list1.delete(e.target.value);
if(list1.size) document.querySelectorAll('#list2_items > option ').forEach(el => el.disabled = true);
else document.querySelectorAll('#list2_items > option ').forEach(el => el.disabled = false);
});
document.querySelector('#list2_items').addEventListener('change', e => {
e.target.select ? list2.add(e.target.value) : list2.delete(e.target.value);
if(list2.size) document.querySelectorAll('#list1_items > option ').forEach(el => el.disabled = true);
else
document.querySelectorAll('#list1_items > option ').forEach(el => el.disabled = false);
});
<script src="https://cdn.jsdelivr.net/npm/bootstrap-select@1.13.9/dist/js/bootstrap-select.min.js"></script>
<link href="https://cdn.jsdelivr.net/npm/bootstrap-select@1.13.9/dist/css/bootstrap-select.min.css" rel="stylesheet"/>
<span id="span_month">
<div id="list1" class="dropdown-check-list" tabindex="100">
<div class="custom-dropdown">
<div class="options">
<select
id="list1_items" name="month"
multiple
data-style="bg-white px-4 py-3 shadow-none mb-5 rounded-0 border kpi_month"
class="selectpicker items "
title="Select Month">
<option></option>
</select>
</div>
</div>
</div>
</span>
<span id="span_quarter">
<div id="list2" class="dropdown-check-list" tabindex="100">
<div class="custom-dropdown">
<div class="options">
<select
id="list2_items" name="quarter"
multiple
data-style="bg-white px-4 py-3 shadow-none mb-5 rounded-0 border kpi_quarter"
class="selectpicker items"
title="Select Quarter">
<option></option>
</select>
</div>
</div>
</div>
</span>
但是这个 jQuery 不起作用。如果从 1 个下拉列表中选择值,我想禁用第二个下拉列表,反之亦然,因为一次只能使用一个下拉列表。如果有人可以请帮助我。谢谢
解决方案
推荐阅读
- html - 允许调整大小以忽略最大高度?
- javascript - Angular 2从数组中添加或删除项目
- php - 类 Illuminate\Database\Eloquent\Builder 的对象外键问题
- php - 如何最小化sql查询中的代码重复?
- java - Java集成kettle连接hive异常,在kettle中使用Hadoop Hive2,可以连接但不能查询
- html - html 导航菜单下拉菜单仅显示最后一个菜单项
- minikube - Minikube:从主机访问仪表板
- vb.net - 在 Accord.net 中设置约束(这应该很容易?)
- ios - 在iOS中,打印nil内存地址显示0x0意味着没有存储空间?
- c++ - 这个后增量语句是否会导致未定义的行为?