zoukankan      html  css  js  c++  java
  • 模糊查询基于select遍历json文件自动填充的实现

    HTML页面

    <tr>
        <td align="left"><span>案由</span>
            <input  type="text" 
    name
    ="ay"
    id
    ="ay"
    value
    =""
    placeholder
    ="输入内容之后,回车键可进行模糊检索!"
    onclick
    ="showAy()"
    onkeypress
    ="checkEnter(event,this);"
    style
    ="340px;height:26px;position: relative;top:2px;left:-1px;"
    /> <select id="selectAy"
    style
    ="340px;height:26px; overflow:hidden;position:relative;top:-8px;left:92px;display:none;"
    onchange
    ="changeAy()"
    onblur
    ="outfocus(this)">
    </
    select> </td> </tr>

    js文件

     1 //模糊查询-----选择方法
     2 function checkAyValue(){
     3     var ay = document.getElementById("ay").value;
     4     if(ay!="" && ay!= null){
     5         selectAy(ay);
     6     }else{
     7         showAy();
     8     }
     9 }
    10 //模糊查询开始
    11 function selectAy(ay){
    12     $("#selectAy").css({"display":"none"}); 
    13     var jsonfile = "minshi.json";
    14     if(ajtype.indexOf("民事")!=-1){jsonfile = "minshi.json";}
    15     else if(ajtype.indexOf("刑事")!=-1){jsonfile = "xingshi.json";}
    16     else if(ajtype.indexOf("行政")!=-1){jsonfile = "xingzheng.json";}
    17     else if(ajtype.indexOf("赔偿")!=-1){jsonfile = "peichang.json";}
    18     else if(ajtype.indexOf("执行")!=-1){jsonfile = "zhixing.json";}
    19 
    20     var ayName="";
    21     $.ajax({
    22            url: appPath + "clientpage/json/ay/" + jsonfile,//json文件位置
    23            type: "GET",//请求方式为get
    24            dataType: "json", //返回数据格式为json
    25            success: function(data) {//请求成功完成后要执行的方法 
    26                //除第一次外,清空select中的option选项
    27                $("#selectAy").empty(); 
    28                //遍历json数组
    29                $.each(data, function(i, item) {
    30                     var s = item.id.indexOf(ay);
    31                     if (s !=-1) {
    32                         ayName=item.name;
    33                         $("#selectAy").append("<option value="" + ayName + "" >" + ayName + "</option>");
    34                     }
    35                 });
    36                 if(ayName==null || ayName == ""){
    37                     afterSelectAy();
    38                     document.getElementById("ay").value=null;
    39                 }else{
    40                     changeAy();
    41                 }
    42            }
    43     });
    44 }
    45 function changeAy(){  
    46     document.getElementById("ay").value= 
    47         document.getElementById("selectAy").options[document.getElementById("selectAy").selectedIndex].value; 
    48  }  
    49 NS4 = (document.layers) ? true : false;
    50 function checkEnter(event,element){   
    51     var code = 0;
    52     if (NS4) code = event.which;
    53     else code = event.keyCode;
    54     if (code==13){
    55         $("#ayContent").css({"display":"none"});
    56         checkAyValue();
    57         $("#selectAy").css({"display":""});
    58         $("#selectAy").css({"background-color":"#F2F8FD"});
    59     }
    60 }
    61 function afterSelectAy(){
    62     layer.msg('没有符合您输入要求的检索结果,请重新输入进行检索!');
    63 }
    64 function outfocus(){
    65     $("#selectAy").css({"display":"none"});
    66 }
    67 //模糊查询结束

    参考:下拉框可实现select与input功能的简便做法

       bootstrap框架下下拉框select搜索功能

    本文仅作为个人记录。

    可供参考。

    2017-11-1  08:36:00  修改

    2017-11-13 08:36:19  上传

  • 相关阅读:
    粤语·简约学习笔记
    Linux的网卡由eth0变成了eth1
    RedHat 更新CentOS Yum源
    Lamp 搭建
    像淘宝、京东这样的大型电商网站服务器构架完全部署方案
    完成静态服务器——Node.js摸石头系列之四
    实现使用Websocket通讯的聊天室——Node.js摸石头系列之六
    Node.js摸石头系列目录
    Aptana studio 3 修改配色方案
    Node.js 的安装和控制台命令——Node.js摸石头系列之一
  • 原文地址:https://www.cnblogs.com/angelye/p/7824729.html
Copyright © 2011-2022 走看看