bootstrap-select search后台查询
2020-07-13 05:44
483 查看
对比了多款bootstrap系列的插件,最终还是选择了bootstrap-select。选择他的原因是他比较简洁大方。但是在使用的过程中还是发现了一些使用的问题。在这我一一道来。
https://www.geek-share.com/detail/2662989982.html(其他两种select参考)
首先我的业务需求是
- 可以多选
- 搜索框可以模糊查询,可以后台查询。
当然主要的实现难度是在第二个环节
bootstrap-select的 search是在已经存在的option中进行筛选的,由于我的下拉框数据基数过于庞大,我是用oninput执行数据填充操作。实现代码如下,我是把后台请求的所有数据缓存在浏览器中,每次去浏览器缓存中拿到数据并填充到select中,记住一定要在append之后执行$('.selectpicker').selectpicker('refresh');不然无法显示,如果追加过后的下拉框过于长的话你也可以设置显示的长度$('.selectpicker').selectpicker({actionsBox: true, //全选,取消全选按钮liveSearch: true,size:6});
document.getElementById("bs-searchbox").oninput = function () { var keyword = $("#bs-searchbox input").val(); if (keyword.length > 3)//当字符长度等于四的时候返回查询结果 { var ssdata = sessionStorage.getItem("CarList"); if (ssdata != null) { var html = ""; var jsondata = JSON.parse(ssdata); var returnarr = ArrayLike(jsondata, keyword) _.each(returnarr, function (d) { html += '<option value=' + d.CarID + '>' + d.CarName + '</option>'; }) $(".selectpicker").append(html); $('.selectpicker').selectpicker('refresh'); } } //if (keyword.length ==0) { // if ($(".bs-searchbox").nextAll("ul") != null) { // $(".bs-searchbox").nextAll("ul").remove(); // } //} } function ArrayLike(array, keyWord) { //正则表达式 //方法一 var arr = []; var reg = new RegExp(keyWord); //_.filter(array, function (obj) { // return obj.CarName.match(reg); //}); _.each(array, function (d) { if (d.CarName.match(reg)) { arr.push(d); } }) //方法二 //var reg = new RegExp(keyWord); //for (var i = 0; i < array.length; i++) { // //如果字符串中不包含目标字符会返回-1 // //方式一正则 // if (array[i].CarName.match(reg)) { // arr.push(array[i]); // } // //方式二字符串匹配 // //if (array[i].CarName.indexOf(keyWord) >= 0) { // // arr.push(array[i]); // //} //} return arr; }
转载于:https://www.cnblogs.com/xiabuyanyu/p/7885161.html
相关文章推荐
- bootstrap-select控件全选,全不选,查询功能实现
- bootstrap-table当查询后再去点击分页时,后台返回的数据是正确的,前台也显示正确了,但是当我点击分页时,列表会刷新为最初的数据,而不再是本次查询得到的数据
- jquery select search select快速查询定位插件
- 通过ajax方式从后台查询出数据并填入前台的select中
- jquery select search select快速查询定位插件
- Bootstrap Search Suggest与php边输入边查询
- 基于HTML5 Bootstrap搭建的后台模板,分页,模糊查询已经全部JS实现,无需编码,嵌入数据即可开发,内置8款皮肤,欧美风格,非常好用!
- BootStrap selectpicker后台动态绑定数据
- 基于bootstrap-select插件,实现select下拉框模糊查询功能
- bootstrap selectpicker控件select下拉框动态数据无法回显的问题 && 不可编辑的下拉框数据提交至后台
- bootStrap-select从后台加载数据(动态加载数据)不成功的解决办法
- 前台的select下拉框选择与后台Oracle数据库的连接——后台获取前台的select中的value,text值,根据相关值查询数据,返回给前台,并修改对应的select默认值
- bootstrap-select 联动框 后台php模拟数据接受
- query ajax json 通过后台代码(查询数据库)绑定html控件select 下拉框实例
- BootStrap selectpicker后台动态绑定数据
- bootstrap-table使用条件查询数据刷新时,传递页码为当前页问题,后台接收offset不等于0
- 关于用bootstrap显示查询的后台数据
- BootStrap selectpicker后台动态绑定数据的方法
- 利用AJAX后台查询数据库返回json,前台生成表格
- alter添加/select查询【今天真是个奇迹啊,老师提前10分钟讲完了,我们终于能按点下课了!!!!】