javascript - Bootstrap-multiselect 显示隐藏 div 元素
问题描述
我正在为我的任务使用bootstrap-multiselect来显示基于多个选中复选框的隐藏动态 div 元素。我在这里找到的 StackOverflow 问题仅公开了如何基于选定的多选而不是 div 显示隐藏多选。
HTML 代码:
<select id="one" multiple="multiple">
<option value="1">One</option>
<option value="2">Two</option>
<option value="3">Three</option>
</select>
<select id="two" multiple="multiple">
<option data-group="1" value="OneA" disabled>One A</option>
<option data-group="1" value="OneB" disabled>One B</option>
<option data-group="2" value="TwoA" disabled>Two A</option>
<option data-group="2" value="TwoB" disabled>Two B</option>
<option data-group="3" value="ThreeA" disabled>Three A</option>
</select>
JavaScript 代码:
$(document).ready(function() {
$('#one').multiselect({
onChange: function(element, checked) {
var opts = $('*[data-group="' + element.val() + '"]');
console.log(opts);
if (checked === true) {
opts.prop('disabled', false).prop('selected', false);
} else if (checked === false) {
opts.prop('disabled', true).prop('selected', false);
}
$("#two").multiselect('refresh');
}
});
$('#two').multiselect();
});
此外,我是 bootstrap 和 jQuery 的初学者。有人可以帮我解决这个问题吗?谢谢你。
解决方案
这很容易实现。
例如,在上面指出的 html 代码中添加以下 Div:
<div data-group="1">data-group="1"</div>
<div data-group="2">data-group="2"</div>
<div data-group="2">data-group="2"</div>
<div data-group="3">data-group="3"</div>
<div data-group="3">data-group="3"</div>
并且可以使用以下方法轻松管理 js 中 Div 的隐藏/显示:
opts.css({'display':'none'}); // 隐藏
opts.css({'display':'block'}); // 以显示
<script>
$(document).ready(function() {
$('#one').multiselect({
onChange: function(element, checked) {
var opts = $('*[data-group="' + element.val() + '"]');
console.log(opts);
if (checked === true) {
opts.prop('disabled', false).prop('selected', false);
opts.css({'display':'block'});
} else if (checked === false) {
opts.prop('disabled', true).prop('selected', false);
opts.css({'display':'none'});
}
$("#two").multiselect('refresh');
}
});
$('#two').multiselect();
});
</script>
您可以根据需要自定义它。例如,您可能需要更改data-group
为myDiv-group
for div 元素并相应地修改 javascript。
希望这有帮助:)
推荐阅读
- java - 可以采用任何数字或任何其他可以添加的通用类
- powershell - PowerShell 任务不会使用 VSTS 任务组变量,但会使用 - 为什么?
- python - 我想取数据集中一个值的最大值和最小值,该值与 python 中的其他几个值一起使用
- python - 我如何抓取 instagram 的探索页面?
- dart - Flutter 仅呈现硬编码的表情符号。动态构造的表情符号显示为纯文本
- python - 如何设置 TopLevel 的标题
- android - 使用 Titanium SDK 7.0.0 版本的后退按钮过早关闭 Android 上的应用程序
- angular - Angular Universal (ssr) 不适用于 Firestore 和 Geofirestore
- php - 添加到购物车按钮单击时在数据库中添加值
- reactjs - 'onClick' 事件影响所有组件的状态,而不仅仅是一个