2013-07-25 79 views
1

首先,我创建了一个选择列表来选择一个选项,当选择一个选项时,使用引导手风琴部件显示下面的其他信息。看看它是如何工作在这里 - http://bootply.com/69516引导'选择'样式,使用jquery转换成引导下拉

因此,上述工作,我也希望它,但它看起来很垃圾 - 理想情况下,我希望它看起来像引导下拉框。我发现一些jquery做到这一点(下面),这里是插入jquery的bootply fork - http://bootply.com/69518

不幸的是,它不起作用,我猜测转换会删除最初在选择列表中的“值”字段。我可以通过与jquery,但仍然学习,这对我来说太多了!

jQuery(function($){ 
    $('select').each(function(i, e){ 
     if (!($(e).data('convert') == 'no')) {              
      $(e).hide().wrap('<div class="btn-group" id="select-group-' + i + '" />'); 
      var select = $('#select-group-' + i); 
      var current = ($(e).val()) ? $(e).val(): '&nbsp;';   
      select.html('<input type="hidden" value="' + $(e).val() + '" name="' + $(e).attr('name') + '" id="' + $(e).attr('id') + '" class="' + $(e).attr('class') + '" /><a class="btn" href="javascript:;">' + current + '</a><a class="btn dropdown-toggle" data-toggle="dropdown" href="javascript:;"><span class="caret"></span></a><ul class="dropdown-menu"></ul>');         
      $(e).find('option').each(function(o,q) { 
       select.find('.dropdown-menu').append('<li><a href="javascript:;" data-value="' + $(q).attr('value') + '">' + $(q).text() + '</a></li>');      
        if ($(q).attr('selected')) 
         select.find('.dropdown-menu li:eq(' + o + ')').click(); 
      }); 
      select.find('.dropdown-menu a').click(function() { 
       select.find('input[type=hidden]').val($(this).data('value')).change(); 
       select.find('.btn:eq(0)').text($(this).text()); 
      }); 
     } 
    }); 
}); 
+0

看一看:http://gustavohenke.github.io/bselect - 它不完整,但可能会帮助你。而且几乎没有文档,它几乎没有文档:( – gustavohenke

+0

是的看着这个之前,下拉菜单没有工作,需要更多的文件等...上面看起来更简单,但无法让两部分工作 –

回答

0

你在

$('select[name="panel"]').change(function(event){ 
    var selected = $(this).find('option:selected'); 
    var value = selected.attr("value"); 
    var name= $(this).attr("name"); 
    var selector = '[for-field="'+name+'"]'; 
    $('.accordion-body'+selector).addClass('collapse'); 
    var selectorForValue = selector+'[for-value="'+value+'"]'; 
    var selectedPanel = $('.accordion-body'+ selectorForValue ); 
    selectedPanel.removeClass('collapse'); 
}) 
+0

我希望它那么简单! –

+0

最新引导 - http://bootply.com/69683不幸的是仍然无法获得信息出现。 –