答案 0 :(得分:8)
将这些javascript行添加到你的小提琴
$('.dropdown-menu option, .dropdown-menu select').click(function(e) {
e.stopPropagation();
});
这是fork
答案 1 :(得分:3)
从你的select元素中取出data-toggle="dropdown"
。然后添加类" preventDefault"到li
并添加一个函数,当单击该元素时停止事件的传播:
$(document).on('click', '.preventDefault', function(e) {
e.stopPropagation();
e.preventDefault();
});
// add the below if selecting an option should close the dropdown
$('.dropdown-menu option, .dropdown-menu select').change(function(e) {
$('.dropdown.open .dropdown-toggle').dropdown('toggle').blur();
});

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<link href="http://netdna.bootstrapcdn.com/twitter-bootstrap/2.3.2/css/bootstrap-combined.min.css" rel="stylesheet" />
<script src="http://netdna.bootstrapcdn.com/twitter-bootstrap/2.3.2/js/bootstrap.min.js"></script>
<div class="dropdown btn-group">
<a class="btn dropdown-toggle" data-toggle="dropdown" href="#">
Action
<span class="caret"></span>
</a>
<ul class="dropdown-menu">
<li class="preventDefault">
<select class="form-control" data-property="color">
<option disabled>Select color:</option>
<option>red</option>
<option>green</option>
<option>blue</option>
<option>white</option>
<option>black</option>
</select>
</li>
</ul>
</div>
&#13;