bootstrap-suggest.min.js搜索下拉建议插件实例

1548年前 (2017-07-21)javaScript4935

效果图:

图片.png

官网demo

1.引入外部js、css:

<link id="bscss" href="${root}/bootstrap/css/bootstrap.css" rel="stylesheet">

<script src="${root}/bootstrap/js/bootstrap-suggest.js" type="text/javascript"></script>
<script src="${root}/bootstrap/js/bootstrap.js" type="text/javascript"></script>

2.html页面:

<div class="input-group">
            <input class="span12 height40 form-control" id="travel" name="model2.name" placeholder="请输入投诉单位(个人)名称"  autocomplete="off" type="text" onclick="isNull()" required="">
            <input class="form-control" id="travelId" name="model2.wid" type="hidden">
             <div class="input-group-btn">
             <button type="button" class="btn btn-default dropdown-toggle" data-toggle="">
               <span class="caret"></span>
            </button>
            <ul class="dropdown-menu dropdown-menu-right" role="menu" style="padding-top: 0px; max-height: 375px; max-width: 800px; overflow: auto; width: auto; transition: all 0.3s ease 0s;">
             </ul>
           </div>
</div>

3.js部分:

  $().ready(function() {
        search();//举报对象名称输入框显示
  });      
 function search(){
 $("#travel").bsSuggest('init',{
                indexId:2,             //data.value 的第几个数据,作为input输入框的内容
                indexKey: 1,            //data.value 的第几个数据,作为input输入框的内容
                allowNoKeyword: false,  //是否允许无关键字时请求数据。为 false 则无输入时不执行过滤请求
                multiWord: true,        //以分隔符号分割的多关键字支持
                separator: ",",         //多关键字支持时的分隔符,默认为空格
                getDataMethod: "url",   //获取数据的方式,总是从 URL 获取
                showHeader: true,       //显示多个字段的表头
                autoDropup: true,       //自动判断菜单向上展开
                effectiveFieldsAlias:{id: "经营许可证",id1:"导游证号",name:"名称",address:"地址", Keyword: "名称", address: "地址"},
                url:  '${root!}/front/report/getName?code=utf-8', /*优先从url ajax 请求 json 帮助数据,注意最后一个参数为关键字请求参数*/
                //http://suggest.taobao.com/sug?code=utf-8&extras=1&q=
                jsonp: null,               //jsonp: null,//设置此参数名,将开启jsonp功能,否则使用json数据结构 
                // url 获取数据时,对数据的处理,作为 fnGetData 的回调函数
                fnAdjustAjaxParam:function(keyword, opts) {
                //console.log('ajax 请求参数调整:', keyword, opts);
                        return {
                            data: {
                                type: $("#type").val(),
                                q:$("#travel").val()    //模糊查询的参数值
                            }
                        };
                },
                fnProcessData: function(json){
                console.log(json);
                //alert(json);
                    var i, len, data = {value: []};
                    if(! json || ! json.result || ! json.result.length) {
                        return false;
                    }
                    len = json.result.length;
                 
                       for (i = 0; i < len; i++) {
                            data.value.push({
                                "id": json.result[i].f_licensenum,
                                "name": json.result[i].f_cname,
                                "address": (json.result[i].f_cnaddress).replace("null","")
                            });
                        }
                 
                    //console.log('淘宝搜索 API: ', data);
                    return data;
                }
            }).on('onDataRequestSuccess', function (e, result) {
               /// console.log('onDataRequestSuccess: ', result);
            }).on('onSetSelectValue', function (e, keyword, data) {
                          $("#travelId").val(data.id);
                          $("#address").val(data.address);                  
            }).on('onUnsetSelectValue', function () {
               // console.log("onUnsetSelectValue");
            });
 
 }

4.后台类:

public void getName() {
        String name = getPara("q");
        //String type = getPara("type");    
        String jsonTravel = "";
        List list =  T_tour_travel.dao
                .find("select f_id,f_licensenum ,f_cname,f_cnaddress,f_legal from T_TOU_TRAVEL where f_cname like '%"
                        + name + "%' order by f_id");        
            renderJson(list);
    }

本文原创,转载必追究版权。

分享给朋友:

相关文章

plsql 中number类型字段 取消科学计数法显示

 PL/SQL DEVELOPER中禁用科学计数法:Tools - Prefrence - SQL Window - 选择:"Number fields to_char&quo...

如何彻底卸载删除oracle数据库

 windows下如何彻底删除Oracle 软件环境: 1、Windows 2000+ORACLE 8.1.7 ,oracle 10g2、ORACLE安装路径为:C:\ORACLE实现方...

MyEclipse 10 性能大优化

MyEclipse 10 性能大优化

 MyEclipse 10已发布,新版本的特性能够大大提高开发者的效率。但同时,由于电脑配置的原因,很多开发者在使用MyEclipse的时候,速度都不是很快,需要我们对MyEclipse进行...

目标管理法——目标分解法

让自己的人生更幸福更有意义关键是:要将梦想转化为具体的目标,然后合理的分解,达到量化,指标化!现将学习到的两种非常有效的目标分解法分享给所有梦想、有激情的朋友:祝愿大家都能梦想成真! 一、俄...

Java 实现用户资料完整度的前端显示(或根据填写资料自动评分)

前端使用 Bootstrap 的进度条组件显示百分比,后台读取权重并计算信息完整度,并将计算的结果返回给前端,供页面显示。CSS1<link href="static/sc/...

谈话让别人舒服的程度,决定你成功的高度

谈话让别人舒服的程度,决定你成功的高度

职场上,有这样两种截然相反的人:有人生怕别人舒服,尽量让别人不舒服,而只要自己舒服就行;还有一类人生怕别人不舒服,尽量让别人舒服,哪怕委屈自己。猎头公司猎聘的老总有几十万年薪的,也有几百万的,甚至有过...

评论列表

苏红文创
苏红文创
8年前 (2017-08-30)

有一种惆怅,看着是自己想要的东西,因为格局不行,接不住。就像这段代码,我想用,可无法延生。

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。