zoukankan      html  css  js  c++  java
  • select实现输入模糊匹配与选择双重功能

    下载jqueryUI插件

    引入

    <link rel="stylesheet" type="text/css" href="/js/jquery/plugins/jqueryUI/jquery-ui.min.css">

    <script src='/js/jquery/plugins/jqueryUI/jquery-ui.min.js'></script>

    html代码

     1               <div class="navbar-form navbar-left" role="search" id="schoolConfig">
     3                             <span class='form-group-addon' style="font-size:16px;">选择学校:</span>
     4                             <div class="form-group" id="schoolQuery"  style="position:relative;">
     5                               <span style="margin-left:100px;18px;overflow:hidden;">
     6                                     <select id="schoolId"  style="118px;margin-left:-100px" onchange="setValue(this)"></select>
     7                                 </span>
     8                                 <input id="schoolName" class="form-control" placeholder="学校名称" style="100px;position:absolute;left:0px;top:0px;height:30px;" onblur="reLoadSection()">
     9                             </div>
    10                         </div>

    js代码

     1 /**
     2  * 将select的值放入input框
     3  */
     4 function setValue(obj){
     5     var index = obj.selectedIndex; // 选中索引
     6     var value = obj.options[index].value; // 选中值
     7     var schoolName = obj.options[index].text; // 选中文本
     8     $('#schoolName').val(schoolName);11 }
    1  $.getJSON(//获取学校数据
    2               '/test/manage/user/school_findAllName.action',
    3                 function(data){
    4                    $( "#schoolName" ).autocomplete({
    5                          source: data
    6                         });
    7                     }
    8                 );
    9             initCombo($('#schoolId'),'/test/manage/user/school_findAllIdAndSchoolName.action','schoolId','schoolName');

    返回数据格式为数组 eg:
    ["西科大","川大","电子科技大学","川音","北大","清华","复旦","上海交大 ","北邮","西石油"]
     1 /**
     2  * init combobox
     3  * @return {} 
     4  */
     5 function initCombo(combo,url,valueField,displayField){
     6     $.getJSON(
     7         url,
     8         function(data){
     9             if(data.rows && data.rows.length>0){
    10                 var html = '<option></option>',
    11                     rows = data.rows,
    12                     len = rows.length;
    13                 
    14                 for(var i=0; i<len; i++)
    15                     html += "<option value='"+ rows[i][valueField] + "'>"+ rows[i][displayField] +"</option>";
    16                 combo.html(html);
    17             }
    18         }
    19     );
    20 }

     extend:可输入的select功能可以通过h5的list属性(datalist)实现。

  • 相关阅读:
    链接的思考
    反向传播算法为什么要“反向”
    浅说机器学习理论
    体验一下5分钟快速迁移mysql近亿数据量大表的速度!!!
    (MHA+MYSQL-5.7增强半同步)高可用架构设计与实现
    MySQL-开发规范升级版
    Mysql 优化建议
    Percona XtraDB Cluster(PXC)-高可用架构设计说明
    企业级-Mysql双主互备高可用负载均衡架构(基于GTID主从复制模式)(原创)
    记一次测试环境下PXC集群问题《经验总结》
  • 原文地址:https://www.cnblogs.com/weilantiankong/p/4665519.html
Copyright © 2011-2022 走看看