html:

@*输入框*@
<div><input type="text" style="width: 85%; height: 34px;" onkeyup="InputChange(this)" id="txtInput">
</div>
@*模拟下拉框*@
<div class="divselect" id="dpSelect"></div>

css:

/*选择框效果*/
.divselect {float: left;position: relative;z-index: 3003;background: #fff;display: none;width: 85%;
}
.divselect ul {padding: 0;margin: 0;border: 1px solid #E4E4E4;background-color: #ffffff;position: absolute;z-index: 30000;margin-top: -1px;width: 100%;overflow: auto;max-height: 200px;
}
.divselect ul li {list-style-type: none;cursor: pointer;height: 24px;line-height: 24px;
}
.divselect ul li:hover {background: #ccc;
}

js:

<script type="text/javascript">//点击模拟下拉框以外的地方 下拉框消失$(document).bind('click', function (e) {var e = e || window.event; //浏览器兼容性var elem = e.target || e.srcElement;while (elem) { //循环判断至跟节点,防止点击的是div子元素if (elem.id && elem.id == 'dpSelect') {return;}elem = elem.parentNode;}$('#dpSelect').css('display', 'none'); //点击的不是div或其子元素
    });//用文本框onkeyup事件触发InputChange方法 InputChange方法判断文本框文字是否改变 文字改变则触发SearchName方法var sOldValue;sOldValue = "";function InputChange(arg) {var vNewValue = $(arg).val();if (sOldValue != vNewValue) {//根据条件查询结果并给下拉框动态赋值
            SearchName(arg);sOldValue = vNewValue;}}function SearchName(arg) {var name = $(arg).val();//如果搜索框为空 则返回falseif (name == "") {$("#dpSelect").attr("style", "display:none");return false;}else {$("#dpSelect").attr("style", "display:block");}//获取数据 并给下拉框动态赋html
        $.ajax({type: "post",url: "......",data: { name: name },dataType: "",async: false,success: function (data) {var strs = "";strs += "<ul>";for (var i = 0; i < data.length; i++) {strs += '<li οnclick="SetValue(this)">' + data[i] + '</li>';}strs += "</ul>";$("#dpSelect").html(strs);},error: function () {alert("查询出错");}});}//点击模拟下拉框内选项后 给文本框赋值 关闭下拉框function SetValue(arg) {var value = $(arg).text();$("#txtInput").val(value);$("#dpSelect").attr("style", "display:none");}
</script>

转载于:https://www.cnblogs.com/blazeZzz/p/7927891.html

jQuery+css模拟下拉框模糊搜索的实现相关推荐

  1. jQuery模拟下拉框单选框复选Select,Checkbox,Radio

    在项目中,你会发现设计稿中常常会有单选框,复选框,但都不是系统默认的样式,这就可以用jquery来模拟它们: 如图所示,实现它们所需要的代码如下: 首先需要引入的代码: <link rel=&q ...

  2. html css 多选下拉框,jQuery多选下拉框插件

    jquery.multi-select.js是一款jQuery多选下拉框插件.该插件可以将select元素转换为带checkbox的多选下拉框,非常实用. 使用方法 在页面中引入下面的文件. lt;l ...

  3. vue uniapp 微信小程序 搜索下拉框 模糊搜索

    vue uniapp 微信小程序 搜索下拉框 模糊搜索 话不多说 直接贴代码 template <template><view class="index"> ...

  4. html网页常用功能:下拉框模糊搜索

    下拉框模糊搜索很好使,但是比较难实现,下面就直接贴代码吧. <!doctype html> <html> <head> <meta charset=" ...

  5. php 获取下拉框选中的文本,jQuery实现select下拉框获取当前选中的文本

    本文主要介绍了jQuery实现select下拉框获取当前选中文本.值.索引以及添加/删除Select的Option项的相关知识,具有很好的参考价值.下面跟着小编一起来看下吧,希望能帮助到大家. 话不多 ...

  6. jquery ajax下拉联动,jQuery Ajax MVC 下拉框联动

    无刷新下拉框联动方法: Controllers代码 public JsonResult DH_Change(string DH_ID) { List TeamLeaderList = FinanceD ...

  7. 【jquery】select下拉框赋值

    前言 jquery操作select下拉框 select <select id="type" name="type"><option value ...

  8. JavaScript jQuery获取radio/下拉框的选中值

    JavaScript获取radio选中值 <ww:iterator value="proceList" status="rowstatus" id=&qu ...

  9. jquery ajax下拉联动,基于jQuery Ajax实现下拉框无刷新联动

    本文实例为大家分享了jQuery Ajax实现下拉框无刷新联动的具体代码,供大家参考,具体内容如下 HTML代码: @{ Layout = null; } @using DAL; @using Sys ...

最新文章

  1. Open***2.4.3 基于用户名密码验证方式(实战)
  2. mysql 线性表_数据结构-线性表之顺序表
  3. 入门 | 初学者必读:解读14个深度学习关键词
  4. Swift5.1 语言参考(十) 语法汇总
  5. 单用户登陆demo-后者挤到前者,类似QQ
  6. mac系统升级 brew 是用不了_PostgreSQL数据库默默升级,导致数据库服务不可用
  7. matlab用之前的计算结果递归,[转载]Matlab正则表达式(递归、匹配上下文等)(转载)...
  8. 中文对比英文自然语言处理NLP的区别综述
  9. 中文生成罗马音_现代建筑寿命仅50年,古罗马混凝土为何2000年越来越坚固?
  10. C++学习日记5——模板
  11. python词云图生成
  12. oracle 提取重复数据,oracle里面查询重复数据的方法
  13. P5900 无标号无根树计数 题解
  14. 使用C#开发Excel插件
  15. android前置摄像头预览,android - 当选择了前置摄像头CameraX预览没有显示任何东西 - 堆栈内存溢出...
  16. .csv是什么文件格式,什么软件可以打开?xls与csv文件是什么区别?功能和作用上有什么不同?
  17. java数字转为大写_java 数字转大写汉字
  18. 沙龙与华为强强携手,机甲龙惊艳广州车展
  19. ubuntu大于4T分区 12T硬盘分区
  20. 响铃:迎风而起的布料B2B平台,谁才是决定生死的命脉?

热门文章

  1. Mysql数据库常用操作整理
  2. php常用的十个代码片段,转载
  3. 提高团队整体能力-同一片天“技术交流会”
  4. stl list(转)
  5. java ssh过滤器_SSH中的过滤器,拦截器,监听器的一些基本认识
  6. 【正一专栏】马蓉到底对王宝强还有啥感情?
  7. 算法导论之每对顶点间的最短路径
  8. 日志分析平台ELK部署初学
  9. Leetcode 319. 灯泡开关 解题思路及C++实现
  10. 数据结构源码笔记(C语言):堆排序