Javascript 引导下拉列表不选择该元素。需要下拉按钮组设计

Javascript 引导下拉列表不选择该元素。需要下拉按钮组设计,javascript,css,twitter-bootstrap,Javascript,Css,Twitter Bootstrap,我正在使用twitter引导,并寻找一个下拉列表,看起来像一个按钮组。问题在于,在所有twitter引导示例中,下拉列表仅作为菜单项使用,因此所选项目不会真正更改: 有人知道如何设计按钮组这样的下拉列表吗?我将此web查找转换为jquery插件: (function($) { $.fn.buttonSelect = function() { this.hide().wrap('<div class="btn-group"/>'); var s

我正在使用twitter引导,并寻找一个下拉列表,看起来像一个按钮组。问题在于,在所有twitter引导示例中,下拉列表仅作为菜单项使用,因此所选项目不会真正更改:


有人知道如何设计按钮组这样的下拉列表吗?

我将此web查找转换为jquery插件:

(function($) {
    $.fn.buttonSelect = function() {
        this.hide().wrap('<div class="btn-group"/>');
        var select = this.parent();
        var selectedOption=this.find('option[selected]').length>0?this.find('option[selected]'):this.find('option:nth(0)');
        var currentValue = selectedOption.val();
        var currentText = selectedOption.text();
        select.html(
            '<input type="hidden" value="' + this.val() + '"/>'+
            '<a class="btn dropdown-toggle" data-toggle="dropdown" href="javascript:;">'+
                '<span>'+currentText+'</span>'+
                '&nbsp;&nbsp;<span class="caret"></span>'+
            '</a>'+
            '<ul class="dropdown-menu"></ul>');

        var dropdownMenu=select.find('.dropdown-menu');
        this.find('option').each(function(o, q) {
            dropdownMenu.
                append('<li><a href="javascript:;" data-value="' + $(q).attr('value') + '">' + $(q).text() + '</a></li>');
        });

        var hidden=select.find('input[type=hidden]');
        var label=select.find('.btn span:nth(0)');
        dropdownMenu.find('a').click(function() {
            hidden.val($(this).data('value')).change();
            label.text($(this).text());
        });

        return this;
    };
})(jQuery);
(函数($){
$.fn.buttonSelect=函数(){
this.hide().wrap(“”);
var select=this.parent();
var selectedOption=this.find('option[selected]')。长度>0?this.find('option[selected]'):this.find('option:nth(0)');
var currentValue=selectedOption.val();
var currentText=selectedOption.text();
select.html(
''+
''+
“
    ”; var dropdownMenu=select.find('.dropdownMenu'); this.find('option')。每个(函数(o,q){ 下拉菜单。 附加(“
  • ”); }); var hidden=select.find('input[type=hidden]'); var label=select.find('.btn span:nth(0)'); 下拉菜单。查找('a')。单击(函数(){ hidden.val($(this.data('value')).change(); label.text($(this.text()); }); 归还这个; }; })(jQuery);

    然后,使用$(elem).buttonSelect();使select元素看起来像按钮组。

    为了使圆角向左,我将隐藏的输入字段移动到下拉切换锚下。