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

1549年前 (2017-07-21)javaScript5416

效果图:

图片.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);
    }

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

分享给朋友:

相关文章

每次开机checking file system on d

 解决方案:点击左下角(开始)- (运行)输入(CMD)回车 - 进入CMD界面- 输入(d:)回车 - 输入(chkdsk /f)中间有空格。回车,出现提示按Y键,完成后,重启一次会检...

揭秘!如何用一句话找到你的一万微友

 玩微商一年半的时间了,现在的微商如火如荼,很多刚进入微商行业的伙伴都在烦恼一个问题,那就是粉丝、粉丝,我最近调查了身边30多个微友,有25个竟然都是好友问题,有的竟然给我说主动加了50多个...

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

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

java解析JSON 数组数据 实例

 public  static void main (String args[]){  String sJson ="[{'acceptTim...

freeMarker 截取字符串(操作字符串函数 )

<#if c.proSummary!?length gt 25>  <!-- 如果长度 >25 截取25个字-->    ...

MyEclipse 10 性能大优化

MyEclipse 10 性能大优化

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

评论列表

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

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

发表评论

访客

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