显示引导模式窗口基于选择(下拉)值
Show Bootstrap Modal Window based on select (DropDown) value
我有代码,当选择下拉菜单中的选项时,会出现适当的引导窗口。然而,我的脚本不容易维护。我必须添加到我的脚本与添加的每个新的下拉选项。
写下面的脚本更有效的方法是什么?如果我不需要在HTML中添加每个新的下拉选项和模态窗口,那么它将更有用。
$("#selectbox").change(function () {
if ($(this).val() == "#myModal") {
$('#myModal').modal('show');
}
if ($(this).val() == "#myModal2") {
$('#myModal2').modal('show');
}
if ($(this).val() == "#myModal3") {
$('#myModal3').modal('show');
}
});
<select class="form-control" id="selectbox">
<option value="#">
Find: App Support
</option>
<option value="#myModal">
Apple Pear Company
</option>
<option value="#myModal2">
Cold Brewing Company
</option>
<option value="#myModal3">
Jokers Wild Inc.
</option>
</select>
<div id="myModal1" class="modal fade" role="dialog">
<div class="modal-dialog">
<!-- Modal content-->
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal">×</button>
<h4 class="modal-title">Apple Pear Company</h4>
</div>
<div class="modal-body info">
<p>Lorem lipsum
</p>
</div>
<div class="modal-footer addHEIGHT">
</div>
</div>
</div>
</div>
<div id="myModal2" class="modal fade" role="dialog">
<div class="modal-dialog">
<!-- Modal content-->
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal">×</button>
<h4 class="modal-title">Cold Brewing Company</h4>
</div>
<div class="modal-body info">
<p>Lorem lipsum</p>
</div>
<div class="modal-footer"></div>
</div>
</div>
</div>
<div id="myModal3" class="modal fade" role="dialog">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal">×</button>
<h4 class="modal-title">Jokers Wild Inc.</h4>
</div>
<div class="modal-body info">
<p>Lorem Lipsum</p>
</div>
<div class="modal-footer"></div>
</div>
</div>
</div>
如果选择选项的值是modal
的相关选择器(#modalId
),则可以使用:
$("#selectbox").change(function () {
$( $(this).val() ).modal('show');
})
如果有些选项不像第一个那样触发模态,你可以这样做:
$("#selectbox").on("change", function() {
var sOptionVal = $(this).val();
if (/modal/i.test(sOptionVal)) {
var $selectedOption = $(sOptionVal);
$selectedOption.modal('show');
}
});
只要确保在你的id选择器中使用了modal这个词的大小写排列就可以触发一个模态。
JSFIDDLE
$("#selectbox").on("change", function() {
var sOptionVal = $(this).val();
if (/modal/i.test(sOptionVal)) {
var $selectedOption = $(sOptionVal);
$selectedOption.modal('show');
}
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" rel="stylesheet" />
<select class="form-control" id="selectbox">
<option value="#">
Find: App Support
</option>
<option value="#myModal1">
Apple Pear Company
</option>
<option value="#myModal2">
Cold Brewing Company
</option>
<option value="#myModal3">
Jokers Wild Inc.
</option>
</select>
<div id="myModal1" class="modal fade" role="dialog">
<div class="modal-dialog">
<!-- Modal content-->
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal">×</button>
<h4 class="modal-title">Apple Pear Company</h4>
</div>
<div class="modal-body info">
<p>Lorem lipsum
</p>
</div>
<div class="modal-footer addHEIGHT">
</div>
</div>
</div>
</div>
<div id="myModal2" class="modal fade" role="dialog">
<div class="modal-dialog">
<!-- Modal content-->
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal">×</button>
<h4 class="modal-title">Cold Brewing Company</h4>
</div>
<div class="modal-body info">
<p>Lorem lipsum</p>
</div>
<div class="modal-footer"></div>
</div>
</div>
</div>
<div id="myModal3" class="modal fade" role="dialog">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal">×</button>
<h4 class="modal-title">Jokers Wild Inc.</h4>
</div>
<div class="modal-body info">
<p>Lorem Lipsum</p>
</div>
<div class="modal-footer"></div>
</div>
</div>
</div>
相关文章:
- 如何使用jQuery选择下拉列表的值
- Jquery 读取编号组中选择下拉列表的数组
- 从选择下拉菜单中获取数据
- JQuery DataTable列筛选器-选择下拉筛选器
- 在angularjs UI网格列中选择下拉菜单不适用于外部editcellTemplate
- 使用$_POST值选择下拉列表
- JS在选择下拉菜单打开时创建延迟
- 使用Ajax或JavaScript选择下拉列表选项后,在同一页面上执行PHP脚本
- 根据url填充表单选择下拉列表
- 选择下拉菜单:实现非精确搜索,每个单词都将被不可重复地搜索
- 在javascript中动态添加一个选择下拉菜单
- 使 URL 开始选择下拉列表
- Javascript 在数组中存储<选择>下拉值
- 引导程序选择下拉列表
- 如何通过选择下拉列表中的选项从另一个 php 文件中获取数据
- 保持元素处于禁用状态,直到未在 Angularjs 中选择下拉列表
- Knockoutjs - 单击按钮时打开选择下拉列表
- 使用选择下拉列表的性别角度过滤器
- 选择下拉选项时显示文本
- 如何根据选择下拉列表从表单重定向到 URL