本篇文章给大家分享的是有关使用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" 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" 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);
以上就是使用bootstrap怎么实现一个多个下拉框同时搜索功能,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注亿速云行业资讯频道。
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。