bootstrap下拉列表多选组件_booterstrip多选(1)

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化的资料的朋友,可以点击这里获取!

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

既然是bootstrap-select,组件肯定是依赖bootstrap的,而bootstrap又是依赖jquery的,所以使用组件必须引用如下文件。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

<link href="Content/bootstrap/css/bootstrap.min.css" rel="stylesheet" />
<link href="Content/bootstrap-select/css/bootstrap-select.min.css" rel="stylesheet" />

<script src="Content/jquery-1.9.1.min.js"></script>
<script src="Content/bootstrap/js/bootstrap.min.js"></script>
<script src="Content/bootstrap-select/js/bootstrap-select.min.js"></script>
<script src="Content/bootstrap-select/js/i18n/defaults-zh\_CN.min.js"></script>

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

最后一个文件 defaults-zh_CN.min.js 非必需,是组件中文化的时候才需要引用。

使用就更加简单了,不用任何已经js,直接使用class就可以初始化。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

<select class="selectpicker">
    <option value="1">广东省</option>
    <option value="2">广西省</option>
    <option value="3">福建省</option>
    <option value="4">湖南省</option>
    <option value="5">山东省</option>                            
</select>

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

给一个select标签加上selectpicker样式即可。

多选就不用多说了

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

<select class="selectpicker" multiple>
    <option value="1">广东省</option>
    <option value="2">广西省</option>
    <option value="3">福建省</option>
    <option value="4">湖南省</option>
    <option value="5">山东省</option>                            
</select>

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

回到顶部

2、其他效果示例

上面是最简单的使用,下面就将一些常用的效果给出代码示例,高手请直接跳过此段。

给组件加搜索功能

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

<select class="selectpicker" multiple data-live-search="true">
    <option value="1">广东省</option>
    <option value="2">广西省</option>
    <option value="3">福建省</option>
    <option value="4">湖南省</option>
    <option value="5">山东省</option>                            
</select>

复制代码

选项分组

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

<select class="form-control selectpicker" data-live-search="true" multiple>
        <optgroup label="广东省">
                <option value="1">广州市</option>
                <option value="2">深圳市</option>
                <option value="3">珠海市</option>
         </optgroup>   
          <optgroup label="广西">
                  <option value="1">南宁市</option>
                  <option value="2">柳州</option>
                  <option value="3">桂林市</option>
           </optgroup>  
           <optgroup label="山东">
                   <option value="1">烟台</option>
                   <option value="2">青岛</option>
                   <option value="3">济南</option>
             </optgroup>                          
</select>

复制代码

设置最多选中项为2个

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

<select class="selectpicker" multiple data-live-search="true" data-max-options="2">
    <option value="1">广东省</option>
    <option value="2">广西省</option>
    <option value="3">福建省</option>
    <option value="4">湖南省</option>
    <option value="5">山东省</option>                            
</select>

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

缩略模式,比如当选中值大于3个的时候只显示选中项的个数,注意这个属性只对多选生效

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

<select class="selectpicker" multiple data-live-search="true" data-selected-text-format="count > 3">
    <option value="1">广东省</option>
    <option value="2">广西省</option>
    <option value="3">福建省</option>
    <option value="4">湖南省</option>
    <option value="5">山东省</option>                            
</select>

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

显示带颜色的标签

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

 <select class="form-control selectpicker" title="请选择省份" multiple>
                        <option data-content="<span class='label label-success'>广东省</span>">广东省</option>    
                        <option data-content="<span class='label label-info'>广西省</span>">广西省</option>  
                        <option data-content="<span class='label label-warning'>福建省</span>">福建省</option>  
                        <option data-content="<span class='label label-danger'>山东省</span>">山东省</option>                        
</select>

复制代码

默认样式选择

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

<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>

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

回到顶部

3、组件取值赋值

上面都是组件的初始化的一些东西,一般情况下,我们需要对组件进行取值和赋值,我们应该如何操作呢。

3.1、组件取值

关于组件取值保持原生的jquery方法,比如 var value = $(‘#sel’).val(); 这样是不是很简单,需要注意的是,如果是多选,这里得到的value变量是一个数组变量,形如 [‘1’,‘2’,‘3’]。

3.2、组件赋值

组件赋值就需要稍微变换一下了,如果你直接 $(‘#sel’).val(‘1’); 这样赋值将会无效,正确的赋值方法为:

$('.selectpicker').selectpicker('val', '1');

在一些级联选择的使用场景中,经常需要在赋值的时候顺便触发一下组件的change事件,我们可以这么做。

$('.selectpicker').selectpicker('val', '1').trigger("change");

如果是多选的赋值,也是一样

$('.selectpicker').selectpicker('val', ['1','2','3']).trigger("change");

回到顶部

4、组件其他用法

全选: $(‘.selectpicker’).selectpicker(‘selectAll’);

反选: $(‘.selectpicker’).selectpicker(‘deselectAll’);

适应手机模式: $(‘.selectpicker’).selectpicker(‘mobile’);

组件禁用:

$('.disable-example').prop('disabled', true);
$('.disable-example').selectpicker('refresh');

组件启用:

$('.disable-example').prop('disabled', false);
$('.disable-example').selectpicker('refresh');

组件销毁:

$('.selectpicker').selectpicker('destroy');

回到顶部

5、组件封装

上面关于组件的初始化介绍了那么多,都是通过class='selectpicker’去做初始化的,很多情况下,我们的select的option都是动态获取,然后再初始化的,于是乎博主仔细寻找api,看里面是否有远程获取数据,很遗憾,组件没有支持这种远程获取数据的方法。没关系,我们自己封装一个ajax请求,然后动态构造option又有多难呢?这里又得提一下原来那篇封装js组件的文章了,我们按照那篇文章的思路封装一个不就好了。以下给出一个参考。

 
bootstrapSelect

这样封装之后,我们直接使用如下代码即可初始化组件。

$('#sel').bootstrapSelect({
 url:'/a/b',
 data: {},
 valueField: 'value',
 textField: 'text',
});

最后的话

最近很多小伙伴找我要Linux学习资料,于是我翻箱倒柜,整理了一些优质资源,涵盖视频、电子书、PPT等共享给大家!

资料预览

给大家整理的视频资料:

给大家整理的电子书资料:

如果本文对你有帮助,欢迎点赞、收藏、转发给朋友,让我有持续创作的动力!

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化的资料的朋友,可以点击这里获取!

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

[外链图片转存中…(img-ghCsl7vM-1715703569251)]

给大家整理的电子书资料:

[外链图片转存中…(img-qRwBFaqL-1715703569251)]

如果本文对你有帮助,欢迎点赞、收藏、转发给朋友,让我有持续创作的动力!

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化的资料的朋友,可以点击这里获取!

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

Bootstrap 是一个流行的前端开发框架,它提供了许多用户界面组件和样式,方便开发者快速搭建网页。在 Bootstrap 中,可以使用下拉菜单来提供用户选择的选项,而且也支持多选的下拉菜单。 要创建一个下拉多选的菜单,首先需要在 HTML 文档中引入 Bootstrap 的 CSS 和 JavaScript 文件。然后使用下拉菜单的 HTML 结构,并在其中添加一个属性' multiple',表示这个下拉菜单支持多选。 例如: ```html <div class="dropdown"> <button class="btn btn-secondary dropdown-toggle" type="button" id="dropdownMenuButton" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"> 下拉菜单 </button> <div class="dropdown-menu" aria-labelledby="dropdownMenuButton"> <div class="dropdown-item"> <input type="checkbox" id="option1" name="option1" value="option1"> <label for="option1">选项1</label> </div> <div class="dropdown-item"> <input type="checkbox" id="option2" name="option2" value="option2"> <label for="option2">选项2</label> </div> <div class="dropdown-item"> <input type="checkbox" id="option3" name="option3" value="option3"> <label for="option3">选项3</label> </div> </div> </div> ``` 在这个例子中,我们创建了一个按钮,并且为按钮添加了下拉菜单的样式。在下拉菜单中,使用了多个带有复选框的选项,并且每个选项都有自己的标签。这样用户就可以通过多选的方式来选择他们需要的选项。 通过以上步骤,就可以在 Bootstrap 中创建一个下拉多选的菜单,使用户可以方便地从多个选项中进行选择。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值