search
HomeWeb Front-endBootstrap TutorialIn-depth analysis of multi-selection and fuzzy query drop-down boxes in bootstrap-select

In-depth analysis of multi-selection and fuzzy query drop-down boxes in bootstrap-select

May 10, 2021 am 10:58 AM
bootstrapdrop down boxMultiple choicefuzzy query

This article will take you to learn more about the multi-selection and fuzzy query drop-down boxes in bootstrap-select. It has certain reference value. Friends in need can refer to it. I hope it will be helpful to everyone.

In-depth analysis of multi-selection and fuzzy query drop-down boxes in bootstrap-select

Introducing the problem

The previous blogger encountered a problem in actual development, that is, it needs to support both multiple selection and simultaneous The drop-down control for fuzzy query is the well-known and powerful drop-down box plug-in bootstrap-select2. The blogger also referred to it at the time, but found that its multi-select effect was relatively poor, similar to this,

In-depth analysis of multi-selection and fuzzy query drop-down boxes in bootstrap-select

Such a multi-select control must be long enough. If the selection exceeds a certain limit, the style will collapse. You know~ I accidentally discovered the bootstrap-select plug-in later. , I instantly realized that it was very high-end! It supports both single selection and multiple selection. The most amazing thing is that it even comes with a fuzzy query function! Let me show you the cool effects first:

bootstrap-select demo

It’s a pity not to use such a control. Later, the blogger found a lot of documents and blog references. , but I found that many of them did not clearly explain the specific usage. They just gave a simple example, which did not have much reference value. The blogger made a clear usage of bootstrap-select by studying the relevant documents on the official website and combining it with his own development experience. The summary is for your reference. [Related recommendations: "bootstrap Tutorial"]

Official plug-in address: http://silviomoreto.github.io/bootstrap-select

Github address: https://github.com/silviomoreto/bootstrap-select

Application examples (refer to the official document Basic examples)

1.Single selection

  • Simple single selection There is no "√" by default when selected.
<select class="selectpicker">
  <option>Mustard</option>
  <option>Ketchup</option>
  <option>Relish</option>
</select>

Effect display

In-depth analysis of multi-selection and fuzzy query drop-down boxes in bootstrap-select
  • Group radio selection Pay attention to adding the optgroup tag
   <select class="selectpicker">
     <optgroup label="Picnic">
    <option>Mustard</option>
    <option>Ketchup</option>
    <option>Relish</option>
     </optgroup>
    <optgroup label="Camping">
    <option>Tent</option>
    <option>Flashlight</option>
    <option>Toilet Paper</option>
    </optgroup>
   </select>

Effect display

In-depth analysis of multi-selection and fuzzy query drop-down boxes in bootstrap-select

## 2. Multi-select box

Comparison Added a

multiple tag to the radio button

<select class="selectpicker" multiple>
  <option>Mustard</option>
  <option>Ketchup</option>
  <option>Relish</option>
</select>

Effect display

In-depth analysis of multi-selection and fuzzy query drop-down boxes in bootstrap-select
##3. Fuzzy query

Add an attribute with

data-live-search="true"

<pre class='brush:php;toolbar:false;'>&lt;select class=&quot;selectpicker&quot; data-live-search=&quot;true&quot;&gt; &lt;option&gt;Hot Dog&lt;/option&gt; &lt;option&gt;Fries&lt;/option&gt; &lt;option&gt;Soda&lt;/option&gt; &lt;option&gt;Burger&lt;/option&gt; &lt;option&gt;Shake&lt;/option&gt; &lt;option&gt;Smile&lt;/option&gt; &lt;/select&gt;</pre>Effect display

In-depth analysis of multi-selection and fuzzy query drop-down boxes in bootstrap-select
4.Multiple selection restrictions

Add attributes

data-max-options="2"

Or use maxOptionsText to limit during initialization<pre class='brush:php;toolbar:false;'>&lt;select class=&quot;selectpicker&quot; multiple data-max-options=&quot;2&quot;&gt; &lt;option&gt;Mustard&lt;/option&gt; &lt;option&gt;Ketchup&lt;/option&gt; &lt;option&gt;Relish&lt;/option&gt; &lt;/select&gt;</pre> Or set maxOptionsText when initializing selectpicker

$(&#39;.selectpicker&#39;).selectpicker({
                &#39;selectedText&#39;:&#39;cat&#39;,
                &#39;maxOptionsText&#39;:2;
             })

Effect display

In-depth analysis of multi-selection and fuzzy query drop-down boxes in bootstrap-select
5. Customize the text of the button

Controlled by the attribute

title

.

Select box text
  • <select class="selectpicker" multiple title="请选择一个">
      <option>Mustard</option>
      <option>Ketchup</option>
      <option>Relish</option>
    </select>
  • Effect display

In-depth analysis of multi-selection and fuzzy query drop-down boxes in bootstrap-select
Select to display a single text This means that when the corresponding option is selected, the title of the option will be displayed. For example, if "Burger, Shake and a Smile" is selected, Combo 2 will be displayed in the text box.
  • <select class="selectpicker">
      <option title="Combo 1">Hot Dog, Fries and a Soda</option>
      <option title="Combo 2">Burger, Shake and a Smile</option>
      <option title="Combo 3">Sugar, Spice and all things nice</option>
    </select>
  • Effect display

In-depth analysis of multi-selection and fuzzy query drop-down boxes in bootstrap-select
6. Multi-select box formatting selected text

Through attributes

data-selected-text-format

to control the display of the selected value The following 4 values ​​are available:

1.
values

: Comma-separated list of selected values ​​(system default);

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

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

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

<select class="selectpicker" multiple data-selected-text-format="count">
  <option>Mustard</option>
  <option>Ketchup</option>
  <option>Relish</option>
  <option>Onions</option>
</select>

效果展示

In-depth analysis of multi-selection and fuzzy query drop-down boxes in bootstrap-select
<select class="selectpicker" multiple data-selected-text-format="count>3">
  <option>Mustard</option>
  <option>Ketchup</option>
  <option>Relish</option>
  <option>Onions</option>
</select>

效果展示

In-depth analysis of multi-selection and fuzzy query drop-down boxes in bootstrap-select

7.样式选择

  • 按钮样式 通过data-style来设置按钮的样式
<select class="selectpicker" data-style="btn-primary">
  ...
</select>

<select class="selectpicker" data-style="btn-info">
  ...
</select>

<select class="selectpicker" data-style="btn-success">
  ...
</select>

<select class="selectpicker" data-style="btn-warning">
  ...
</select>

<select class="selectpicker" data-style="btn-danger">
  ...
</select>

效果展示

In-depth analysis of multi-selection and fuzzy query drop-down boxes in bootstrap-select
  • 单选框样式 这里要注意一下,单选框默认是没有多选框的选中之后的"√"图标的,如果想要加上这个图标的话,需要在样式中加入show-tick即可。
<select class="selectpicker show-tick">
  <option>Mustard</option>
  <option>Ketchup</option>
  <option>Relish</option>
</select>

效果展示

In-depth analysis of multi-selection and fuzzy query drop-down boxes in bootstrap-select
  • 菜单的箭头 Bootstrap的菜单箭头也可以被添加进来,需要加入样式show-menu-arrow,个人感觉差别不大
<select>
  <option>Mustard</option>
  <option>Ketchup</option>
  <option>Relish</option>
</select>

效果展示

In-depth analysis of multi-selection and fuzzy query drop-down boxes in bootstrap-select
  • style样式自定义 bootstrap-select的样式不是死的,可以自定义style样式,类似最基本的css样式添加。
.special {
  font-weight: bold !important;
  color: #fff !important;
  background: #bc0000 !important;
  text-transform: uppercase;
}

<select class="selectpicker">
  <option>Mustard</option>
  <option class="special">Ketchup</option>
  <option style="background: #5cb85c; color: #fff;">Relish</option>
</select>

效果展示

In-depth analysis of multi-selection and fuzzy query drop-down boxes in bootstrap-select
  • 宽度(Width)

1.引用bootstrap的样式

<div class="row">
  <div class="col-xs-3">
    <div class="form-group">
      <select class="selectpicker form-control">
        <option>Mustard</option>
        <option>Ketchup</option>
        <option>Relish</option>
      </select>
    </div>
  </div>
</div>

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

<select class="selectpicker" data-width="auto">
   <option>cow</option>
    <option>bullaaaaaaaaaaaa</option>
    <option>ASD</option>
    <option>Bla</option>
    <option>Ble</option>
</select>
<select class="selectpicker" data-width="fit">
  <option>cow</option>
    <option>bullaaaaaaaaaaaa</option>
    <option>ASD</option>
    <option>Bla</option>
    <option>Ble</option>
</select>
<select class="selectpicker" data-width="100px">
  <option>cow</option>
    <option>bull</option>
    <option>ASD</option>
    <option selected>Bla</option>
    <option>Ble</option>
</select>
<select class="selectpicker" data-width="50%">
    <option>cow</option>
    <option>bull</option>
    <option>ASD</option>
    <option selected>Bla</option>
    <option>Ble</option>
</select>

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

In-depth analysis of multi-selection and fuzzy query drop-down boxes in bootstrap-select

8.自定义option

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

 <select class="selectpicker">
  <option data-icon="glyphicon-heart">Ketchup</option>
  <option data-icon="glyphicon glyphicon-th-large">Mustard</option>
  <option data-icon="glyphicon glyphicon-home">Relish</option>
</select>

效果展示

In-depth analysis of multi-selection and fuzzy query drop-down boxes in bootstrap-select

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

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

<select class="selectpicker">
  <option data-content="<span class=&#39;label label-success&#39;>Relish</span>">Relish</option>
</select>

效果展示

In-depth analysis of multi-selection and fuzzy query drop-down boxes in bootstrap-select

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

<select>
    <option>Ketchup</option>
    <option>Mustard</option>    
    <option>Relish</option>
</select>

效果展示

In-depth analysis of multi-selection and fuzzy query drop-down boxes in bootstrap-select
$(&#39;.selectpicker&#39;).selectpicker({
                &#39;selectedText&#39;:&#39;cat&#39;,
                &#39;showSubtext&#39;:true
             })
             
<select class="selectpicker" data-size="5">
    <option data-subtext="Heinz">Ketchup</option>
    <option data-subtext="ble">Mustard</option>    
    <option data-subtext="com">Relish</option>
</select>

效果展示

In-depth analysis of multi-selection and fuzzy query drop-down boxes in bootstrap-select

9.自定义下拉菜单

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

<select class="selectpicker" data-size="5">
    <option>apple</option>
    <option>banana</option>
    <option>group</option>
    <option>orange</option>
    <option>cherry</option>
    <option>mango</option>
    <option>pineapple</option>
    <option>lychee</option>
</select>

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

In-depth analysis of multi-selection and fuzzy query drop-down boxes in bootstrap-select

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

<select class="selectpicker" multiple data-actions-box="true">
  <option>Mustard</option>
  <option>Ketchup</option>
  <option>Relish</option>
</select>

效果展示

In-depth analysis of multi-selection and fuzzy query drop-down boxes in bootstrap-select

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

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

效果展示

In-depth analysis of multi-selection and fuzzy query drop-down boxes in bootstrap-select

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

<select class="selectpicker" data-size="5">
  <option>Mustrad</option>
  <option >Ketchup</option>
  <option >Relish</option>
  <option data-divider="true"></option>
   <option>Mustrad</option>
  <option >Ketchup</option>
  <option >Relish</option>
</select>

效果展示

In-depth analysis of multi-selection and fuzzy query drop-down boxes in bootstrap-select

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

<select class="selectpicker" data-header="Select a condiment">
  <option>Mustard</option>
  <option>Ketchup</option>
  <option>Relish</option>
</select>

效果展示

In-depth analysis of multi-selection and fuzzy query drop-down boxes in bootstrap-select

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

 $(&#39;.selectpicker&#39;).selectpicker({
                &#39;selectedText&#39;:&#39;cat&#39;,                   
                 &#39;dropupAuto&#39;:false
             })

<select class="selectpicker dropup">
  <option>Mustard</option>
  <option>Ketchup</option>
  <option>Relish</option>
</select>

效果展示

In-depth analysis of multi-selection and fuzzy query drop-down boxes in bootstrap-select

10.不可用

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

<select class="selectpicker" disabled>
  <option>Mustard</option>
  <option>Ketchup</option>
  <option>Relish</option>
</select>

效果展示

In-depth analysis of multi-selection and fuzzy query drop-down boxes in bootstrap-select

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

<select class="selectpicker">
  <option>Mustard</option>
  <option disabled>Ketchup</option>
  <option>Relish</option>
</select>

效果展示

In-depth analysis of multi-selection and fuzzy query drop-down boxes in bootstrap-select

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

<select class="selectpicker test">
  <optgroup label="Picnic" disabled>
    <option>Mustard</option>
    <option>Ketchup</option>
    <option>Relish</option>
  </optgroup>
  <optgroup label="Camping">
    <option>Tent</option>
    <option>Flashlight</option>
    <option>Toilet Paper</option>
  </optgroup>
</select>

效果展示

In-depth analysis of multi-selection and fuzzy query drop-down boxes in bootstrap-select

总结

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

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

The above is the detailed content of In-depth analysis of multi-selection and fuzzy query drop-down boxes in bootstrap-select. For more information, please follow other related articles on the PHP Chinese website!

Statement
This article is reproduced at:掘金社区. If there is any infringement, please contact admin@php.cn delete
Bootstrap: Simplifying Responsive Web DevelopmentBootstrap: Simplifying Responsive Web DevelopmentMay 09, 2025 am 12:13 AM

Bootstrap simplifies the development process mainly through its raster system, predefined components and JavaScript plug-ins. 1. The grid system allows for flexible layout, 2. Predefined components such as buttons and navigation bars simplify style design, 3. JavaScript plug-in enhances interactive functions and improves development efficiency.

Bootstrap: The Key to Responsive Web DesignBootstrap: The Key to Responsive Web DesignMay 08, 2025 am 12:24 AM

Bootstrap is an open source front-end framework developed by Twitter, providing rich CSS and JavaScript components, simplifying the construction of responsive websites. 1) Its grid system is based on a 12-column layout, and the display of elements under different screen sizes is controlled through class names. 2) The component library includes buttons, navigation bars, etc., which are easy to customize and use. 3) The working principle depends on CSS and JavaScript files, and you need to pay attention to handling dependencies and style conflicts. 4) The usage examples show basic and advanced usage, emphasizing the importance of custom functionality. 5) Common errors include grid system calculation errors and style coverage, which require debugging using developer tools. 6) Performance optimization recommendations only introduce necessary components and customize samples using preprocessors

Bootstrap: A Powerful Framework for Web DesignBootstrap: A Powerful Framework for Web DesignMay 07, 2025 am 12:05 AM

Bootstrap is an open source front-end framework developed by the Twitter team to simplify and speed up the web development process. 1.Bootstrap is based on HTML, CSS and JavaScript, and provides a wealth of components and tools for creating modern user interfaces. 2. Its core lies in responsive design, implementing various layouts and styles through predefined classes and components. 3.Bootstrap provides predefined UI components, such as navigation bars, buttons, forms, etc., which are easy to use and adjust. 4. Examples of usage include creating a simple navigation bar and advanced collapsible sidebar. 5. Common errors include version conflicts, CSS overwrites and JavaScript errors, which can be used through the version management tool.

The Power of Bootstrap in React: A Detailed LookThe Power of Bootstrap in React: A Detailed LookMay 06, 2025 am 12:06 AM

Bootstrap can be integrated in React in two ways: 1) CSS and JavaScript files using Bootstrap; 2) Use the React-Bootstrap library. React-Bootstrap provides encapsulated React components, making using Bootstrap in React more natural and efficient.

Using Bootstrap Components in React: A Step-by-Step TutorialUsing Bootstrap Components in React: A Step-by-Step TutorialMay 05, 2025 am 12:09 AM

There are two ways to use Bootstrap components in React projects: 1) CSS and JavaScript of the original Bootstrap; 2) Use libraries designed specifically for React such as react-bootstrap or reactstrap. 1) Install Bootstrap through npm and introduce its CSS file in the entry file, and then use the Bootstrap class name in the React component. 2) After installing react-bootstrap or reactstrap, directly use the React components it provides. Use these methods to quickly build a responsive UI, but pay attention to style loading and JavaScript

Bootstrap in Plain English: Simplifying Web DevelopmentBootstrap in Plain English: Simplifying Web DevelopmentMay 04, 2025 am 12:02 AM

Bootstrap is an open source front-end framework that simplifies web development. 1. It is based on HTML, CSS, JavaScript, and provides predefined styles and components. 2. Use predefined classes and JavaScript plug-ins to implement responsive layout and interactive functions. 3. The basic usage is to introduce CSS and JavaScript files, use classes to create navigation bars, etc. 4. Advanced usage includes custom complex layouts. 5. Check the introduction of class names and files during debugging and use developer tools. 6. The optimization suggestion is to only introduce necessary files, use CDN, and use LESS or Sass when customizing.

Bootstrap and React: Creating Responsive Web ApplicationsBootstrap and React: Creating Responsive Web ApplicationsMay 03, 2025 am 12:13 AM

How to create responsive web applications using Bootstrap and React? By combining Bootstrap's CSS framework and React's componentized architecture, modern, flexible and easy to maintain can be created. The specific steps include: 1) Importing the CSS file of Bootstrap and using its class to style React components; 2) Using React's componentization to manage state and logic; 3) Loading Bootstrap styles as needed to optimize performance; 4) Creating a dynamic interface using React's Hooks and Bootstrap's JavaScript components.

Bootstrap: Frontend Development Made EasierBootstrap: Frontend Development Made EasierMay 02, 2025 am 12:10 AM

Bootstrap is an open source front-end framework that helps developers quickly build responsive websites. 1) It provides predefined styles and components such as grid systems and navigation bars. 2) Implement style and dynamic interaction through CSS and JavaScript files. 3) The basic usage is to introduce files and build pages with class names. 4) Advanced usage includes custom styles through Sass. 5) Frequently asked questions include style conflicts and JavaScript component issues, which can be solved through developer tools and modular management. 6) Performance optimization is recommended to selectively introduce modules and rationally use grid systems.

See all articles

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

Video Face Swap

Video Face Swap

Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Tools

SecLists

SecLists

SecLists is the ultimate security tester's companion. It is a collection of various types of lists that are frequently used during security assessments, all in one place. SecLists helps make security testing more efficient and productive by conveniently providing all the lists a security tester might need. List types include usernames, passwords, URLs, fuzzing payloads, sensitive data patterns, web shells, and more. The tester can simply pull this repository onto a new test machine and he will have access to every type of list he needs.

DVWA

DVWA

Damn Vulnerable Web App (DVWA) is a PHP/MySQL web application that is very vulnerable. Its main goals are to be an aid for security professionals to test their skills and tools in a legal environment, to help web developers better understand the process of securing web applications, and to help teachers/students teach/learn in a classroom environment Web application security. The goal of DVWA is to practice some of the most common web vulnerabilities through a simple and straightforward interface, with varying degrees of difficulty. Please note that this software

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

SublimeText3 English version

SublimeText3 English version

Recommended: Win version, supports code prompts!

SublimeText3 Linux new version

SublimeText3 Linux new version

SublimeText3 Linux latest version