在Bootstrap按钮下拉标题/占位符文本中显示所选项目

时间:2013-06-12 09:15:55

标签: jquery html twitter-bootstrap

这个问题已经在Stackoverflow上被问过几次了 - 但是我仍然无法深究它...加上我的查询就是投入更多的下拉菜单。所以我有两个下拉菜单和一个搜索。我想从下拉列表和“已选择”中选择以替换下拉占位符文本。但我还需要记住,在点击搜索后,它将在数据库中查询这些选定的字段。

            <!-- Search box Start -->
                    <form>
                        <div class="well carousel-search hidden-phone">
                            <div class="btn-group">
                                <a class="btn dropdown-toggle btn-select" data-toggle="dropdown" href="#">Select a Country<span class="caret"></span></a>
                                    <ul class="dropdown-menu">
                                    <li><a href="#">Item I</a></li>
                                    <li><a href="#">Item II</a></li>
                                    <li><a href="#">Item III</a></li>
                                    <li class="divider"></li>
                                    <li><a href="#">Other</a></li>
                                    </ul>
                        </div>

                            <div class="btn-group">
                                <a class="btn dropdown-toggle btn-select2" data-toggle="dropdown" href="#">Select a Region/City<span class="caret"></span></a>
                                    <ul class="dropdown-menu">
                                        <li><a href="#">Item I</a></li>
                                    <li><a href="#">Item II</a></li>
                                    <li><a href="#">Item III</a></li>
                                    <li class="divider"></li>
                                    <li><a href="#">Other</a></li>
                                    </ul>
                            </div>
                            <div class="btn-group">
                                <button type="submit" class="btn btn-primary">Search</button>
                            </div>

                        </div>
                    </form>
            <!-- Search box End -->

2 个答案:

答案 0 :(得分:20)

您可以像这样设置所选的下拉文字..

$(".dropdown-menu li a").click(function(){
  var selText = $(this).text();
  $(this).parents('.btn-group').find('.dropdown-toggle').html(selText+'<span class="caret"></span>');
});

然后处理搜索按钮单击以获取所选值:

$("#btnSearch").click(function(){
    alert($('.btn-select').text()+", "+$('.btn-select2').text());
});

工作演示:http://www.bootply.com/63926

答案 1 :(得分:1)

Bootstrap 4版本:

$(".dropdown-item").click(function(){
    var selText = $(this).text();
    $(this).parents('.dropdown').find('.dropdown-toggle').html(selText+'<span class="caret"></span>');
});