1.想要实现的效果如下:其实与百度地图的城市切换部分是一样的。

代码如下:其中的知识点包括($.inArray(test,array)>0   判断test是否在数组array中)($("#input").keyup(function(){}) 当向input中输入内容时的监听事件)

(val.indexOf(test)!=-1 如果test包含在val中)

    function searchBtn() {
var customhouseName = $.trim($(".cityChoice .search input").val());
// $(".searchResult").html(" ");
if (customhouseName == "")
{ alert("请输入海关的名称");}
else {
if ($.inArray(customhouseName, arry)>0) { //如果input中的内容在数组中,
$(".cityChoice div").eq(0).find("span").html(customhouseName);
$(".city").children("button").html(customhouseName);
$(".searchResult").addClass("hide");
}
else {
$(".searchResult").addClass("hide");
alert("请输入正确的名称");
}
}
}
$(function () {
//input框输入内容时
$(".cityChoice .search input").keyup(function () {
$(".searchResult").html("");
var customHouse = $.trim($(this).val().toString());
if (customHouse != "") {
$.each(arry, function (index, val) {
//如果输入的内容包括在数据中,就将其加入ul li中
if (val.indexOf(customHouse) != -1) {
$(".searchResult").append("<li>" + val + "</li>");
}
//如果ul中有子元素,则ul显示出来
if ($(".searchResult").html()!="") {
$(".searchResult").removeClass("hide");
}
})
}
//点击ul li中的数据,将其写入input中并清空ul中数据,隐藏ul。
$(".searchResult li").click(function () {
$(".cityChoice .search input").val($(this).html());
$(this).parent().html();
$(".searchResult").addClass("hide");
})
return false;
}) })

前端代码:

 <div class="search">
<span></span>&emsp;&emsp;<input type="text" placeholder="" /><button onclick="searchBtn()">搜索</button>
<ul class="searchResult hide"></ul>
</div> .cityChoice .search input{height:24px;width:130px;margin-right:5px;border:1px solid #eee;}
.cityChoice .search input:focus{border-color:#bbb;}
.cityChoice .search button{padding:3px 5px; height:26px;}
.cityChoice .search button:hover{background-color:#eee;}
.cityChoice .search .searchResult{left: 89px;width: 131px;position: absolute; background-color: #fff;
border: 1px solid #bbb; overflow: hidden; padding: 3px 5px;box-sizing: border-box;max-height:280px;overflow-y:auto;}
.cityChoice .search .searchResult li{padding:3px 0;}
.cityChoice .search .searchResult li:hover{cursor:pointer;}

jquery实现搜索提示效果的更多相关文章

  1. 基于jQuery Tooltips悬停提示效果

    基于jQuery Tooltips悬停提示效果.这是一款基于jquery.tooltipster插件实现的jQuery Tooltips Hover effect特效.效果图如下: 在线预览   源码 ...

  2. 简单jquery 鼠标悬停提示效果

    记得自己引入jq插件哦~~~ <!DOCTYPE html> <html lang="en"> <head> <meta charset= ...

  3. BootStrap入门教程 (四) :JQuery类库插件(模态窗口,滚动监控,标签效果,提示效果,“泡芙”效果,警告区域,折叠效果,旋转木马,输入提示)

    上讲回顾:Bootstrap组件丰富同时具有良好可扩展性,能够很好地应用在生产环境.这些组件包括按钮(Button),导航(Navigation),缩略图( thumbnails),提醒(Alert) ...

  4. 超链接提示效果jQuery+CSS+html

    我们知道浏览器自带了超链接提示, 只需要在超链接中加入 title 属性就可以了. <a href="#" title="吉大砍人案致1死1伤 受害者死前大喊他手里 ...

  5. 用jQuery实现搜索框的过滤效果

    遇到的问题: 1.动态添加了某些元素,在动态添加的某个元素上绑定事件失效 原因:因为需要绑定的元素的直接父元素也是动态添加的解决:向上为上一级父元素绑定事件 $(".check-box&qu ...

  6. jQuery打造智能提示插件二(可编辑下拉框)

    在上一篇 jQuery打造智能提示插件 上改进,增加下拉按钮,修复点击下拉区域外不隐藏BUG 效果 下拉按钮素材: js封装,注意红色部分为BUG修复,然后传入boxwidth不带px: /* /// ...

  7. jquery的智能提示控件

    福利到~分享一个基于jquery的智能提示控件intellSeach.js   一.需求 我们经常会遇到[站内搜索]的需求,为了提高用户体验,我们希望能做到像百度那样的即时智能提示.例如:某公司人事管 ...

  8. jQuery的搜索关键词自动匹配插件

    相信许多人都会用过搜索栏自动匹配关键词的功能,无论是像google的专业搜索引擎,还是普通的网站,现在许多都用上了这种关键词匹配技术,本文介绍的用jQuery实现的关键词匹配技术,当然要整合到自己的系 ...

  9. jQuery框架学习第十一天:实战jQuery表单验证及jQuery自动完成提示插件

    jQuery框架学习第一天:开始认识jQueryjQuery框架学习第二天:jQuery中万能的选择器jQuery框架学习第三天:如何管理jQuery包装集 jQuery框架学习第四天:使用jQuer ...

随机推荐

  1. AJAX(JS&&JQ&&H5)

    一 AJAX的简介: AJAX是"Asynchronous Javascript And XML"(异步JavaScript和XML),通过后台与服务器实现少量的数据交换,可以使页 ...

  2. MongoDB由于目标计算机积极拒绝,无法连接

    遇到这个问题的时候,可以通过以下步骤解决: 1.打开Mongo安装包:进入Mongo下的data文件夹下的db文件夹,找到Mongod.lock,删除. 2.在命令行中输入: mongod.exe - ...

  3. js实现css、addClass、removeClass和toggleClass

    JQuery中获取CSS样式css(name):访问第一匹配元素的样式属性css(name,value):在所有匹配的元素中,设置一个样式属性的值css(properties):把一个“名/值对”对象 ...

  4. 关于IE8

    IE8对H5,CSS3,还有脚本的兼容都存在各种问题,调padding的时候老是忘记IE盒子跟W3C盒子模型不一样:         IE8兼容CSS3透明度的方法,采用滤镜实现: (1)filter ...

  5. Iptables工作原理使用详解

    Iptables防火墙简介 Iptables名词和术语 Iptables工作流程 基本语法 Filter 参数说明 NAT表: Icmp协议 TCP FLAG 标记 什么是状态检测 iptables的 ...

  6. androi 多线程

    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools=&q ...

  7. H2数据库攻略

    H2是一个开源的嵌入式数据库引擎,采用java语言编写,不受平台的限制,同时H2提供了一个十分方便的web控制台用于操作和管理数据库内容.H2还提供兼容模式,可以兼容一些主流的数据库,因此采用H2作为 ...

  8. ubuntu各种应用安装

    微信安装,编译包下载,双击electronic-wechat就能用了,记得lock在launcher上 https://github.com/geeeeeeeeek/electronic-wechat ...

  9. Java selenium web页面的滚动条操作

    摘录自:http://blog.csdn.net/iceryan/article/details/8162703 //移动到元素element对象的"顶端"与当前窗口的" ...

  10. Linux下不同服务器间数据传输

    因为工作原因,需要经常在不同的服务器见进行文件传输,特别是大文件的传输,因此对linux下不同服务器间数据传输命令和工具进行了研究和总结.主要是rcp,scp,rsync,ftp,sftp,lftp, ...