当然,我知道SELECT表单元素很难在基础知识之外进行样式和/或修改。
出于好奇,有没有人知道一次性的bootstrap(来自twitter的那个)解决方案,它可以让我影响SELECT的大小,甚至可能应用一个看起来更像是自举按钮的渐变(比他们现在有的沙哑表面。
我自己并不介意使用CSS,但我认为在重新发明轮子之前我会问一下。
任何指针,链接或建议都将不胜感激。
答案 0 :(得分:33)
您可以使用jQuery插件bootstrap-select:
https://developer.snapappointments.com/bootstrap-select/
它会将您的选择转换为引导按钮下拉列表
答案 1 :(得分:4)
有点晚了但也许这可以帮助http://blog.iamjamoy.com/docs/select.html
或此http://ivaynberg.github.com/select2/
第一个不适用于IE,如果你可以解决它,请提供。
答案 2 :(得分:0)
jQuery(function($){
$('select').each(function(i, e){
if (!($(e).data('convert') == 'no')) {
//$(e).hide().wrap('<div class="btn-group" id="select-group-' + i + '" />');
$(e).after('<div class="btn-group" id="select-group-' + i + '" />');
var select = $('#select-group-' + i);
var current = ($(e).val()) ? $(e).val(): ' ';
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());
});
$(e).remove();
}
});
});