HTML页面

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

js文件

 //模糊查询-----选择方法
function checkAyValue(){
var ay = document.getElementById("ay").value;
if(ay!="" && ay!= null){
selectAy(ay);
}else{
showAy();
}
}
//模糊查询开始
function selectAy(ay){
$("#selectAy").css({"display":"none"});
var jsonfile = "minshi.json";
if(ajtype.indexOf("民事")!=-1){jsonfile = "minshi.json";}
else if(ajtype.indexOf("刑事")!=-1){jsonfile = "xingshi.json";}
else if(ajtype.indexOf("行政")!=-1){jsonfile = "xingzheng.json";}
else if(ajtype.indexOf("赔偿")!=-1){jsonfile = "peichang.json";}
else if(ajtype.indexOf("执行")!=-1){jsonfile = "zhixing.json";} var ayName="";
$.ajax({
url: appPath + "clientpage/json/ay/" + jsonfile,//json文件位置
type: "GET",//请求方式为get
dataType: "json", //返回数据格式为json
success: function(data) {//请求成功完成后要执行的方法
//除第一次外,清空select中的option选项
$("#selectAy").empty();
//遍历json数组
$.each(data, function(i, item) {
var s = item.id.indexOf(ay);
if (s !=-1) {
ayName=item.name;
$("#selectAy").append("<option value=\"" + ayName + "\" >" + ayName + "</option>");
}
});
if(ayName==null || ayName == ""){
afterSelectAy();
document.getElementById("ay").value=null;
}else{
changeAy();
}
}
});
}
function changeAy(){
document.getElementById("ay").value=
document.getElementById("selectAy").options[document.getElementById("selectAy").selectedIndex].value;
}
NS4 = (document.layers) ? true : false;
function checkEnter(event,element){
var code = 0;
if (NS4) code = event.which;
else code = event.keyCode;
if (code==13){
$("#ayContent").css({"display":"none"});
checkAyValue();
$("#selectAy").css({"display":""});
$("#selectAy").css({"background-color":"#F2F8FD"});
}
}
function afterSelectAy(){
layer.msg('没有符合您输入要求的检索结果,请重新输入进行检索!');
}
function outfocus(){
$("#selectAy").css({"display":"none"});
}
//模糊查询结束

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

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

本文仅作为个人记录。

可供参考。

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

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

模糊查询基于select遍历json文件自动填充的实现的更多相关文章

  1. 使用maven根据JSON文件自动生成Java POJO类(Java Bean)源文件

    根据JSON文件自动生成Java POJO类(Java Bean)源文件 本文介绍使用程序jsonschema2pojo来自动生成Java的POJO类源文件,本文主要使用maven,其他构建工具请参考 ...

  2. 零基础学习java------36---------xml,MyBatis,入门程序,CURD练习(#{}和${}区别,模糊查询,添加本地约束文件) 全局配置文件中常用属性 动态Sql(掌握)

    一. xml  1. 文档的声明 2. 文档的约束,规定了当前文件中有的标签(属性),并且规定了标签层级关系 其叫html文档而言,语法要求更严格,标签成对出现(不是的话会报错) 3. 作用:数据格式 ...

  3. Vue之循环遍历Json数据,填充Table表格

    简单记一次Vue循环遍历Json数据,然后填充到Table表格中,展示到前端的代码: async getData(id) { const res = await this.$store.api.new ...

  4. npm install命令对package-lock.json文件自动做了一些额外的更新

    今天我使用 npm 命令给项目安装file-saver,通过git却发现package-lock.json中除了file-saver组件之外的其他组件的记录也被改了 npm为何会自动做这些更改呢,又如 ...

  5. scp传输文件,自动填充密码

    一个偷懒的小shell, #!/usr/bin/expect #******************************************************************** ...

  6. django ORM 增删改查 模糊查询 字段类型 及参数等

    ORM 相关 #sql中的表 #创建表: CREATE TABLE employee( id INT PRIMARY KEY auto_increment , name VARCHAR (), gen ...

  7. 五 查询数据SELECT   一、单表查询

    一 单表查询的语法 二 关键字的执行优先级 三 简单查询 四 WHERE约束 五 分组查询:GROUP BY 六 HAVING过滤 七 查询排序:ORDER BY 八 限制查询的记录数:LIMIT 九 ...

  8. MyBatis基础入门《六》Like模糊查询

    MyBatis基础入门<六>Like模糊查询 描述: 未改动的文件,不再粘贴出来.项目中SQL的xml映射文件重要标签如下: mapper namespace cache 配置给定命令空间 ...

  9. [ASP.NET]使用Oracle.ManagedDataAccess的OracleParameter参数化和OracleDataAdapter模糊查询

    今天写个查询员工的信息的demo遇到了2个问题 问题1.使用Oracle.ManagedDataAccess的OracleParameter参数化 OracleParameter 的使用(参数名要以: ...

随机推荐

  1. Codeforces Round #581 (Div. 2)A BowWow and the Timetable (思维)

    A. BowWow and the Timetable time limit per test1 second memory limit per test256 megabytes inputstan ...

  2. 使用h5新特性,轻松监听任何App自带返回键

    1.前言 如今h5新特性.新标签.新规范等有很多,而且正在不断完善中,各大浏览器商对它们的支持,也是相当给力.作为前端程序员,我觉得我们还是有必要积极关注并勇敢地加以实践.接下来我将和各位分享一个特别 ...

  3. gulp 自动化构建网站(版本号静态资源)

    前言 新的一年啦,感觉总是静不下心,用了一天的时间吧,算是对gulp 这个前端打包工具入门了,自己也写了demo,表示对这个稍微理解了吧, 当然还是有差距的啦,下面讲讲怎么用吧: 如何用 当然先去官网 ...

  4. springboot 开启缓存

    Caching Data with Spring This guide walks you through the process of enabling caching on a Spring ma ...

  5. docker 部署项目

    一:我使用的是阿里云的ubuntu16.4系统. 项目数据库: # 数据源 spring: datasource: type: com.zaxxer.hikari.HikariDataSource d ...

  6. 11、LineEdit与setCompleter自动补全

    #include "mainwindow.h" #include "ui_mainwindow.h" #include <QDebug>//引入打印 ...

  7. CF1101D GCD Counting 点分治+质因数分解

    题意:求最长的树上路径点值的 $gcd$ 不为 $1$ 的长度. 由于只要求 $gcd$ 不为一,所以只要 $gcd$ 是一个大于等于 $2$ 的质数的倍数就可以了. 而我们发现 $2\times 1 ...

  8. 报错:没有与参数列表匹配的构造函数 "CFileDialog::CFileDialog" 实例

    如果是在解决方案管理器窗口内,右击你的项目“项目”,然后选“属性”(最后一项),再点“配置属性”,是个“+”号,把它展开,然后选“常规”选项卡,倒数第三项“字符集”,选择“使用多字节字符集”.再编译应 ...

  9. CF 672C 两个人捡瓶子 最短路与次短路思想

    C. Recycling Bottles time limit per test 2 seconds memory limit per test 256 megabytes input standar ...

  10. codevs 5929 亲戚x

                         题目描述 Description 若某个家族人员过于庞大,要判断两个是否是亲戚,确实还很不容易,现在给出某个亲戚关系图,求任意给出的两个人是否具有亲戚关系. ...