基于bootstrap实现多个下拉框同时搜索功能


Posted in Javascript onJuly 19, 2017

本文实例为大家分享了bootstrap实现下拉框搜索展示的具体代码,供大家参考,具体内容如下

1.第一个下拉框代码

<div class="btn-group col-sm-3 col-xs-6 util-btn-margin-bottom-5 quick-search"> 
       <!--快速查询-->
       <div class="input-group">
        <span class="input-group-addon"><i class="fa fa-search"></i></span>
        <select data-filter-type="2" name="copyfrom" class="form-control select2" data-validate="notempty" style="visibility: hidden;" data-field="name" data-placeholder="搜索数据资源">
         <option value="">请选择数据资源</option>
         <optgroup label="UNESCO二类中心">
          <#list data.copyfromList as entity>
          <#if (entity.type?? && entity.type == '1')>
          <option value="${entity.alias!}" <#if (param.copyfrom?? && param.copyfrom == entity.alias)>selected</#if>>${entity.alias!}</option>
          </#if>
          </#list>
         </optgroup>
         <optgroup label="科技动态与进展">
          <#list data.copyfromList as entity>
          <#if (entity.type?? && entity.type == '7')>
          <option value="${entity.alias!}" <#if (param.copyfrom?? && param.copyfrom == entity.alias)>selected</#if>>${entity.alias!}</option>
          </#if>
          </#list>
         </optgroup>
         <optgroup label="其他">
          <#list data.copyfromList as entity>
          <#if (entity.type?? && entity.type == '8')>
          <option value="${entity.alias!}" <#if (param.copyfrom?? && param.copyfrom == entity.alias)>selected</#if>>${entity.alias!}</option>
          </#if>
          </#list>
         </optgroup>
        </select>
       </div>
      </div>

2.第二个下拉框代码

<div class="btn-group col-sm-3 col-xs-6 util-btn-margin-bottom-5 quick-search"> 
       <!--快速查询-->
       <div class="input-group">
        <span class="input-group-addon"><i class="fa fa-search"></i></span>
        <select data-filter-type="2" name="cid" class="form-control select2" data-validate="notempty" style="visibility: hidden;" data-field="name" data-placeholder="搜索栏目名称">
         <option value=""></option>
         <#list data.categories as entity>
         <option value="${entity.id}" <#if (param.cid?? && param.cid == entity.id)>selected</#if>>${entity.id} - ${entity.name}</option>
         </#list>
        </select>
       </div>
      </div>

3.后台js代码(url 参数整理)

bindEvents:function(){

var self = this, dom = self.element;


$('select[name="copyfrom"]', dom).change(function(event){


self.params.copyfrom = $(this).val();


var url = self.formatParams(self.params);


window.location.href = "cekasp_article.htm" + url;

});



$('select[name="cid"]', dom).change(function(event){


self.params.cid = $(this).val();


var url = self.formatParams(self.params);


window.location.href = "cekasp_article.htm" + url;

});

 }


formatParams:function(params){


var self = this;


var url = "";


for(var param in params){


if(params[param]){



url += param + "=" + params[param] + "&";


}

}


if(url.length > 0){



url = "?" + url.substring(0,url.length-1);

}


return url;

}

 4.后台java部分代码(接收参数,然后过滤器根据参数得到想要的结果)

 String categoryId = request.optString("cid");
if (!ValidateUtil.isNull(categoryId)) {

// 加载栏目信息
  
JSONObject jsonCategory = toJSONObject(adminService.loadById(CekaspCategory.class, categoryId));


response.put("category", jsonCategory);


param.addFilter("id", FilterType.IN, articleIdList, 1);


}


String copyfrom = request.optString("copyfrom");

if (!ValidateUtil.isNull(copyfrom)) {


param.addFilter("copyfrom", FilterType.EQUALS, copyfrom);

  }

  List<CekaspArticle> articleList = adminService.list(CekaspArticle.class,param);

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
Mootools 1.2教程 设置和获取样式表属性
Sep 15 Javascript
JS getAttribute和setAttribute(取得和设置属性)的使用介绍
Jul 10 Javascript
一个简单的Node.js异步操作管理器分享
Apr 29 Javascript
javascript arguments使用示例
Dec 16 Javascript
JS实现alert中显示换行的方法
Dec 17 Javascript
js中window.open的参数及注意注意事项
Jul 06 Javascript
学习vue.js条件渲染
Dec 03 Javascript
AngularJS中的缓存使用
Jan 11 Javascript
canvas知识总结
Jan 25 Javascript
jQuery阻止移动端遮罩层后页面滚动
Mar 15 Javascript
30分钟快速入门掌握ES6/ES2015的核心内容(上)
Apr 18 Javascript
浅析JavaScript预编译和暗示全局变量
Sep 03 Javascript
深入理解vue2.0路由如何配置问题
Jul 18 #Javascript
JavaScript实现二维坐标点排序效果
Jul 18 #Javascript
Angular.js中angular-ui-router的简单实践
Jul 18 #Javascript
jQuery Validate格式验证功能实例代码(包括重名验证)
Jul 18 #jQuery
jquery版轮播图效果和extend扩展
Jul 18 #jQuery
Vue学习笔记进阶篇之vue-cli安装及介绍
Jul 18 #Javascript
深入解析Vue 组件命名那些事
Jul 18 #Javascript
You might like
PHP 日,周,月点击排行统计
2012/01/11 PHP
php通过COM类调用组件的实现代码
2012/01/11 PHP
dedecms中使用php语句指南
2014/11/13 PHP
利用PHP判断文件是否为图片的方法总结
2017/01/06 PHP
Gambit vs ForZe BO3 第一场 2.13
2021/03/10 DOTA
Opacity.js
2007/01/22 Javascript
Chrome Form多次提交表单问题的解决方法
2011/05/09 Javascript
jQuery中json对象的复制方式介绍(数组及对象)
2013/06/08 Javascript
原生的html元素选择器类似jquery选择器
2014/10/15 Javascript
js 左右悬浮对联广告特效代码
2014/12/12 Javascript
js实现当复选框选择匿名登录时隐藏登录框效果
2015/08/14 Javascript
BootStrap glyphicon图标无法显示的解决方法
2016/09/06 Javascript
bootstrap table小案例
2016/10/21 Javascript
Node.js开启Https的实践详解
2016/10/25 Javascript
jQuery.datatables.js插件用法及api实例详解
2016/10/28 Javascript
jQuery Easyui加载表格出错时在表格中间显示自定义的提示内容
2016/12/08 Javascript
详解VueJs前后端分离跨域问题
2017/05/24 Javascript
javascript 封装Date日期类实例详解
2017/05/28 Javascript
Vue自定义指令详解
2017/07/28 Javascript
Vue keep-alive实践总结(推荐)
2017/08/31 Javascript
jqgrid实现简单的单行编辑功能
2017/09/30 Javascript
JQuery元素快速查找与操作
2018/04/22 jQuery
Vue+Element UI+vue-quill-editor富文本编辑器及插入图片自定义
2019/08/20 Javascript
简单实现节流函数和防抖函数过程解析
2019/10/08 Javascript
[07:40]DOTA2每周TOP10 精彩击杀集锦vol.4
2014/06/25 DOTA
[00:32]2018DOTA2亚洲邀请赛出场——VP
2018/04/04 DOTA
python字符串str和字节数组相互转化方法
2017/03/18 Python
Python3使用PySynth制作音乐的方法
2019/09/09 Python
python函数map()和partial()的知识点总结
2020/05/26 Python
中专生自荐信
2013/10/12 职场文书
彩妆大赛策划方案
2014/05/13 职场文书
工作年限证明模板
2014/11/01 职场文书
旷工检讨书1000字
2015/01/01 职场文书
单位推荐信范文
2015/03/27 职场文书
新年祝酒词大全
2015/08/11 职场文书
Filebeat 采集 Nginx 日志的方法
2021/03/31 Servers