0

0

深入解析bootstrap-select中的多选和模糊查询下拉框

青灯夜游

青灯夜游

发布时间:2021-05-10 10:58:03

|

3995人浏览过

|

来源于掘金社区

转载

本篇文章带大家详细了解一下bootstrap-select中的多选和模糊查询下拉框。有一定的参考价值,有需要的朋友可以参考一下,希望对大家有所帮助。

深入解析bootstrap-select中的多选和模糊查询下拉框

引入问题

之前博主在实际开发中遇到了一个问题,就是需要既支持多选又同时支持模糊查询的下拉控件,大家所熟知的比较强大的下拉框插件bootstrap-select2,博主当时也参考过,但是发现它的多选效果做的比较差,类似这种,

select2的多选效果

这样的多选控件必须要控件足够长,如果选择超过一定限制就会出现样式崩溃,你懂的~后面我无意中发现了bootstrap-select插件,瞬间发现它很高大上呀!它即可以支持单选,又支持多选,最厉害的是竟然还自带模糊查询功能!先给大家展示下炫酷的效果吧:

bootstrap-select demo

这样的控件不用真是可惜了,后面博主找了很多文档和博客参考,但是发现很多都没有写清楚具体的用法,只是简单的摆一个例子,并没有太大的参考价值,博主通过研究官网的相关文档以及结合自身开发经验,把bootstrap-select的用法做一个清晰的梳理,供大家参考。【相关推荐:《bootstrap教程》】

官方插件地址: http://silviomoreto.github.io/bootstrap-select

Github地址:  https://github.com/silviomoreto/bootstrap-select

应用示例(参考官方文档Basic examples)

1.单选

  • 简单单选 选中默认是没有“√”的。

效果展示

Mapify
Mapify

Mapify是由Xmind推出的AI思维导图生成工具,原名ChatMind

下载
深入解析bootstrap-select中的多选和模糊查询下拉框
  • 分组单选 注意加入optgroup标签
   

效果展示

深入解析bootstrap-select中的多选和模糊查询下拉框

2.多选框

相比于单选框加入了一个multiple标签

效果展示

深入解析bootstrap-select中的多选和模糊查询下拉框

3.模糊查询

添加一个data-live-search="true"的属性

效果展示

深入解析bootstrap-select中的多选和模糊查询下拉框

4.多选限制

添加属性data-max-options="2"或者在初始化时用maxOptionsText做限制

或者在初始化selectpicker时设置maxOptionsText

$('.selectpicker').selectpicker({
                'selectedText':'cat',
                'maxOptionsText':2;
             })

效果展示

深入解析bootstrap-select中的多选和模糊查询下拉框

5.自定义按钮的文本

通过属性title来控制。

  • 选择框文本

效果展示

深入解析bootstrap-select中的多选和模糊查询下拉框
  • 选择显示单条文本 意思就是选中相应的option,就展示option的title,比如选中"Burger, Shake and a Smile",文本框内显示Combo 2。

效果展示

深入解析bootstrap-select中的多选和模糊查询下拉框

6.多选框格式化选择文本

通过属性 data-selected-text-format 来控制选中的值的显示 可选的值有如下4个:

1.values: 逗号分隔的选定值列表(系统默认);

2.count: 如果选择了一个项,则显示选项值。如果选择多于一个,则显示所选项的数量,如选择2个,则下拉框显示2个已被选中;

3.count > x: 当count的值小于x时,展示逗号分隔的选定值列表;当count>x时,显示x个被选中;

4.static:无论选中什么,都只展示默认的选中文本。 下面给几个简单示例

效果展示

深入解析bootstrap-select中的多选和模糊查询下拉框

效果展示

深入解析bootstrap-select中的多选和模糊查询下拉框

7.样式选择

  • 按钮样式 通过data-style来设置按钮的样式








效果展示

深入解析bootstrap-select中的多选和模糊查询下拉框
  • 单选框样式 这里要注意一下,单选框默认是没有多选框的选中之后的"√"图标的,如果想要加上这个图标的话,需要在样式中加入show-tick即可。

效果展示

深入解析bootstrap-select中的多选和模糊查询下拉框
  • 菜单的箭头 Bootstrap的菜单箭头也可以被添加进来,需要加入样式show-menu-arrow,个人感觉差别不大

效果展示

深入解析bootstrap-select中的多选和模糊查询下拉框
  • style样式自定义 bootstrap-select的样式不是死的,可以自定义style样式,类似最基本的css样式添加。
.special {
  font-weight: bold !important;
  color: #fff !important;
  background: #bc0000 !important;
  text-transform: uppercase;
}

效果展示

深入解析bootstrap-select中的多选和模糊查询下拉框
  • 宽度(Width)

1.引用bootstrap的样式

2.使用data-width属性,来定义宽度,可选的值有以下4个auto:select的宽度由option中内容宽度最宽的哪个决定;fit:select的宽度由实际选中的option的宽度决定;100px:select的宽度定义为100px;50%:select的宽度设置为父容器宽度的50%。




效果展示:从左至右依次为“auto”,“fit","100px","50%"。

深入解析bootstrap-select中的多选和模糊查询下拉框

8.自定义option

1.添加图标 用data-icon给option添加小图标,实现比较炫酷的效果

 

效果展示

深入解析bootstrap-select中的多选和模糊查询下拉框

如果想要获取更多样式可参考bootstrap官网的图标库,给个网址www.runoob.com/bootstrap/b…

2.插入HTML 用data-content可以在option中插入html元素,实现想要的效果。

效果展示

深入解析bootstrap-select中的多选和模糊查询下拉框

3.插入二级标题 用data-subtext实现二级标题,实现提示或者其他效果,如果要在select中也展示二级标题,要在初始化selectpicker时要设置showSubtext为true。

效果展示

深入解析bootstrap-select中的多选和模糊查询下拉框
$('.selectpicker').selectpicker({
                'selectedText':'cat',
                'showSubtext':true
             })
             

效果展示

深入解析bootstrap-select中的多选和模糊查询下拉框

9.自定义下拉菜单

1.菜单显示项大小 通过data-size属性来限制菜单显示的条数,比如说option有8条,我们只展示5条,其余的通过滚动条显示。

效果展示(只展示前5个,后面的可以拖动滚动条查看)

深入解析bootstrap-select中的多选和模糊查询下拉框

2.全选和全不选 通过设置data-actions-box="true"来添加全选和全不选的按钮

效果展示

深入解析bootstrap-select中的多选和模糊查询下拉框

当然这个按钮的文本也是可以自定制的 只需要在初始化时设置即可

       $('.selectpicker').selectpicker({
                'selectedText':'cat',
                 'noneSelectedText':'请选择',
                 'deselectAllText':'全不选',
                 'selectAllText': '全选',
             })

效果展示

深入解析bootstrap-select中的多选和模糊查询下拉框

3.添加数据分割线 设置data-divider="true"添加数据分割线。

效果展示

深入解析bootstrap-select中的多选和模糊查询下拉框

4.添加菜单头 用data-header为下拉菜单设置菜单头

效果展示

深入解析bootstrap-select中的多选和模糊查询下拉框

5.设置菜单的上浮或者下浮 通过设置dropupAuto来设置菜单的上下浮动,dropupAuto默认为true,自动确定是否应显示的菜单上面或下面的选择框,如果设置为false,系统会加入一个dropup样式的上拉框。

 $('.selectpicker').selectpicker({
                'selectedText':'cat',                   
                 'dropupAuto':false
             })

效果展示

深入解析bootstrap-select中的多选和模糊查询下拉框

10.不可用

在对应的控件上加入disabled即可实现 1.设置select不可用 这里select按钮失效,不能点击

效果展示

深入解析bootstrap-select中的多选和模糊查询下拉框

2.设置option不可用 这里option设置属性为disabled的将无法选中

效果展示

深入解析bootstrap-select中的多选和模糊查询下拉框

3.设置optiongroup不可用 这里是一个optiongroup将无法选中

效果展示

深入解析bootstrap-select中的多选和模糊查询下拉框

总结

好的,这里我们基本上把官方的应用示例解读完毕,当然如果有疑问可以自己亲自去验证或者咨询博主,想实现自己想要的效果就要多加摸索和实践,只要明白其中的规则就能触类旁通了。第一篇关于bootstrap-select的官方示例文档的解读,如果想了解更多bootstrap-select的用法,可以关注我后面的博客哦。

更多编程相关知识,请访问:编程入门!!

相关专题

更多
php源码安装教程大全
php源码安装教程大全

本专题整合了php源码安装教程,阅读专题下面的文章了解更多详细内容。

150

2025.12.31

php网站源码教程大全
php网站源码教程大全

本专题整合了php网站源码相关教程,阅读专题下面的文章了解更多详细内容。

88

2025.12.31

视频文件格式
视频文件格式

本专题整合了视频文件格式相关内容,阅读专题下面的文章了解更多详细内容。

90

2025.12.31

不受国内限制的浏览器大全
不受国内限制的浏览器大全

想找真正自由、无限制的上网体验?本合集精选2025年最开放、隐私强、访问无阻的浏览器App,涵盖Tor、Brave、Via、X浏览器、Mullvad等高自由度工具。支持自定义搜索引擎、广告拦截、隐身模式及全球网站无障碍访问,部分更具备防追踪、去谷歌化、双内核切换等高级功能。无论日常浏览、隐私保护还是突破地域限制,总有一款适合你!

61

2025.12.31

出现404解决方法大全
出现404解决方法大全

本专题整合了404错误解决方法大全,阅读专题下面的文章了解更多详细内容。

493

2025.12.31

html5怎么播放视频
html5怎么播放视频

想让网页流畅播放视频?本合集详解HTML5视频播放核心方法!涵盖<video>标签基础用法、多格式兼容(MP4/WebM/OGV)、自定义播放控件、响应式适配及常见浏览器兼容问题解决方案。无需插件,纯前端实现高清视频嵌入,助你快速打造现代化网页视频体验。

16

2025.12.31

关闭win10系统自动更新教程大全
关闭win10系统自动更新教程大全

本专题整合了关闭win10系统自动更新教程大全,阅读专题下面的文章了解更多详细内容。

12

2025.12.31

阻止电脑自动安装软件教程
阻止电脑自动安装软件教程

本专题整合了阻止电脑自动安装软件教程,阅读专题下面的文章了解更多详细教程。

5

2025.12.31

html5怎么使用
html5怎么使用

想快速上手HTML5开发?本合集为你整理最实用的HTML5使用指南!涵盖HTML5基础语法、主流框架(如Bootstrap、Vue、React)集成方法,以及无需安装、直接在线编辑运行的平台推荐(如CodePen、JSFiddle)。无论你是新手还是进阶开发者,都能轻松掌握HTML5网页制作、响应式布局与交互功能开发,零配置开启高效前端编程之旅!

2

2025.12.31

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
Bootstrap 5教程
Bootstrap 5教程

共46课时 | 2.7万人学习

HTML+CSS基础与实战
HTML+CSS基础与实战

共132课时 | 9.3万人学习

JS进阶与BootStrap学习
JS进阶与BootStrap学习

共39课时 | 3.1万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号