bootstrap下拉框分页_【Bootstrap】 bootstrap-select2下拉菜单插件

本文介绍了如何使用Bootstrap的select2插件优化下拉菜单,包括静态搜索框、多选框、动态搜索等功能。通过设置不同的初始化参数,如language、width、placeholder等,实现自定义组件。此外,还探讨了如何处理动态搜索的ajax请求,以及如何设置默认值和处理分页。示例代码展示了如何创建带静态搜索框的下拉菜单、带有图片的下拉菜单和tag形式的多选框。
摘要由CSDN通过智能技术生成

这次开发了个小TRS系统,虽然是很小,但是作为初心者,第一次用到了很多看起来洋气使用起来有相对简单的各种前端(主要是和bootstrap配合使用)组件。包括bootstrap-select2,bootstrap-datetimepicker,bootstrap-fileinput等。本文就旨在记录一些这些组件相关的内容

【bootstrap-select2】

官方文档:【https://select2.org/options】

这个组件主要用于优化等页面组件。比如我们想要在下拉菜单的顶部加上一个搜索框支持我们对选项进行搜索,抑或是在多选下拉菜单中我们要有那种类似于tag形式的表现,用这个组件就很好了。首先是这个组件需要在页面中进行引入的文件:

zh-CN.js是语言翻译文件,需要注意引入必须在select2.min.js后面,否则会报错。这一点也适用于绝大多数支持国际化显示的组件。

当然因为是bootstrap的组件,自然是不能少bootstrap的js和css以及支持bootstrap的jquery了,这个就不写出来了。

■  带静态搜索框的下拉菜单

所谓静态搜索框,就是指这个下拉菜单里所有的option都是在页面渲染时就已经固化好了的,用这个搜索框进行搜索时不会动态发请求到后台去取数据。这个搜索框的HTML可以这么写:

1

2

3

这就是一个普通的select,只不过需要有form-control这个class和一个用于后续表示用的id。

然后在js中这么写:

$('#static_dropdown').select2({

language: 'zh-CN',

width: '100%',

placeholder: '请选择',

minimumInputLength: 10});

利用前端组件一个非常重要的内容就是把握初始化时各个初始化参数的含义。通过对不同参数发出调整来搞出一个符合自己需求的组件。

这里用到的四个参数,language显而易见是国际化显示用的。width指出了这个select的宽度,placeholder就是placeholder...,minimunInputLength指出了在搜索时至少要输入多少字符才会给出响应的搜索结果。如果待选项不是太多的话尽量不要设置过大的值,像示例的10,我觉得是很大的一个值了。。

下面也会零散性地给出一些参数说明:

selectOnClose  当设置成true时,当收起菜单时的高亮项会自动被选择,如果是false则不会自动选择。

dropdownParent  可以指定下拉菜单在html代码中的位置。默认情况下,下拉菜单都是被append到body中,并且被设置成position:absolute,且位置在select的下方。而设置这个参数比如dropdownParent: $('#myModal'),就可以将下拉菜单放入一个指定的容器中。

tags  把tags设置成true了之后,在搜索时即便没有搜索到相关内容,也会把你输入的内容当成一个可选项。之所以被称为tags,就是因为tags这个东西不一定要都是既存的,可以有非既存而我们自己添加的情况。

placeholder  如果值是一个字符串那么就是一个简单的placeholder,如果换成一个对象也可以,即为菜单添加一个默认的选项。比如placeholder: {id:-1,text:'--请选择--'}

tokenSeparators  可以设置成一个包含各种字符的列表如[',',' '],常和tags以及多选菜单配合使用。即自己输入时,输入逗号或空格(看你这个参数设置的情况)时认为是一个tag的终结,就把前面的内容作为一个新tag添加到多选框里面。

createTag  这个参数的值也是一个函数对象。这个函数接受一个参数param,其结构是这样的

Bootstrap提供了一个简单而强大的下拉框组件。你可以使用下面的代码来创建一个Bootstrap下拉框: ```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"> <a class="dropdown-item" href="#">选项1</a> <a class="dropdown-item" href="#">选项2</a> <a class="dropdown-item" href="#">选项3</a> </div> </div> ``` 在这个例子中,我们首先创建一个包含下拉框的`<div>`容器,并为它添加`dropdown`类。接下来,我们创建一个按钮元素,通过添加`btn`和`btn-secondary`类来定义按钮的样式。我们也添加了`dropdown-toggle`类来指示这个按钮是一个下拉按钮。 按钮中的文字是“选择”,你可以根据需要修改它。在按钮元素的属性中,我们添加了`data-toggle="dropdown"`来指示这个按钮要触发下拉行为。 然后,我们创建了一个`<div>`容器作为下拉菜单,并添加了`dropdown-menu`类来定义它的样式。在这个容器里,我们添加了多个`<a>`元素作为下拉选项。你可以根据需要修改选项的文本和链接。 最后,我们使用`aria-labelledby`属性将下拉菜单与按钮相关联,这样屏幕阅读器用户可以正确地访问它。 请确保在使用之前引入Bootstrap的CSS和JavaScript文件。希望这个例子能帮到你!如果还有其他问题,请随时问我。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值