Ajax实现模拟关键字智能匹配搜索效果的教程

准备数据keyword.json:(这里只贴出部分数据)

[

 {"id":1,"initial":"ad","keyword":"奥迪"},

 {"id":2,"initial":"ada4l","keyword":"奥迪A4L"},

 {"id":3,"initial":"ada6l","keyword":"奥迪A6L"},

 {"id":4,"initial":"adq5","keyword":"奥迪Q5"},

 {"id":5,"initial":"ada3","keyword":"奥迪A3"},

 {"id":6,"initial":"adq7","keyword":"奥迪Q7(进口)"},

 {"id":7,"initial":"ada8","keyword":"奥迪A8L(进口)"},

 {"id":8,"initial":"bm","keyword":"宝马"},

 {"id":9,"initial":"bm5x","keyword":"宝马5系"},

 {"id":10,"initial":"bm7x","keyword":"宝马7系"},

 {"id":11,"initial":"bt","keyword":"本田"},

 {"id":12,"initial":"bqsbx25","keyword":"北汽绅宝 X25"},

 {"id":13,"initial":"bqsbx35","keyword":"北汽绅宝X35"},

 {"id":14,"initial":"bqsbx55","keyword":"北汽绅宝X55"}

]

html结构

<form class="fl search_form"action="#"method="post">

 <input class="search_text"id="searchKey"type="search"placeholder="请输入搜索关键字"onkeyup="searchSuggest(this);"/>

 <input class="search_btn"type="submit"value="搜索"/>

</form>

<!--start--智能搜索关键字匹配弹出层-->

<ul class="keywords_list"></ul>

<!--end--智能搜索关键字匹配弹出层-->

js:

//当在搜索框输入内容时,根据关键字匹配,显示弹出层

functionsearchSuggest(obj){

 varsearchKey=$(obj).val();

 varreg =newRegExp(searchKey,"i");//忽略大小写匹配搜索框中输入的内容

 $.ajax({

 type:"get",

 url:"data/keyword.json",

 dataType:"json",

 success:function(data){

  vararr=[];

  for(vari=0,len=data.length;i<len;i++){

  if(searchKey!=""&& (data[i].initial.search(reg)!=-1 || data[i].keyword.search(reg)!=-1)) {

   arr.push("<li onclick='changeSearchKey(this);'>"+data[i].keyword+"</li>");

  }

  }    

  $(".keywords_list").html(arr).show();

 }

 });

}

//单击匹配列表中的关键字选项时,将该关键字显示在搜索框中

functionchangeSearchKey(obj){

 varvalue=$(obj).text();

 $("#searchKey").val(value);

 $('.keywords_list').hide();

}

效果图:

时间: 2024-11-02 07:25:18

Ajax实现模拟关键字智能匹配搜索效果的教程的相关文章

Ajax实现模拟关键字智能匹配搜索效果

准备数据keyword.json:(这里只贴出部分数据) [ {"id":1,"initial":"ad","keyword":"奥迪"}, {"id":2,"initial":"ada4l","keyword":"奥迪A4L"}, {"id":3,"initial":

js实现搜索框关键字智能匹配代码_javascript技巧

只要使用搜索引擎的朋友应该都有这样的体会,就是当在搜索框输入关键字的时候,会出现自能匹配现象,这绝对是非常好的用户体验,下面就是一段类似的代码,当然这里只是掩饰,所以只能匹配的数据都是本地固定好的,在实际应用中可以才能够数据库读取数据. 效果图: 代码实例如下: <!DOCTYPE html> <html> <head> <meta charset=" utf-8"> <meta name="author" co

Illustrator模拟photoshop蒙版绘制朦胧效果月亮教程

给各位Illustrator软件的使用者们来详细的解析分享一下模拟photoshop蒙版绘制朦胧效果月亮的教程. 教程分享: 1.在Illustrator教程 中新建文件,在深色图形上方画圆形.   2.Illustrator的"透明面板"和Photoshop相似,也有混和方式和透明度的调节.现在的白方块是当前选中的物体(实际里面是上述白色的圆形).   3.点右上角三角符号,开始制作蒙版.   4.出现如同Photoshop一样的蒙版.蒙版的原理也是白色显示当前图形的颜色.黑色遮挡当

基于jQuery实现搜索关键字自动匹配功能_jquery

今天我们就一起来看一个简单的基于jquery的关键字自动匹配的例子,希望文章能够对各位有帮助.例子一 在项目中,有时候需要用户选择城市,但是城市太多,用户选择起来不太方便,所以提供了一个用户可以通过输入框输入城市的汉字或者拼音简写.结果示意图如下: 当输入拼音后结果示意图如下: 实现代码如下: <html><head><title>实时查询城市通过姓名或拼音简写</title></head><meta charset = "utf

DWR实现模拟Google搜索效果实现原理及代码_javascript技巧

复制代码 代码如下: <!-- 模拟google搜索 --> <script type="text/javascript"> /********************************可配置选项********************************/ // 被选中的相似关键字背景颜色 var selectedBgColor = "#CCCCCC"; // 未被选中的相似关键字背景颜色 var unselectedBgColo

jQuery实现搜索关键字自动匹配的例子

例子一, 在项目中,有时候需要用户选择城市,但是城市太多,用户选择起来不太方便,所以提供了一个用户可以通过输入框输入城市的汉字或者拼音简写.结果示意图如下:    当输入拼音后结果示意图如下:   实现代码如下: <html><head><title>实时查询城市通过姓名或拼音简写</title></head><meta charset = "utf-8" ><script type="text/j

jQuery实现搜索关键字自动匹配提示方法

在现在的Web设计中,提高用户体验是企业最为注重的内容之一.在搜索表单中,根据输入的部分内容进行关键字匹配提示功能,就是最直观和常用的交互体验,类似功能已经被多数的互联网网站应用.例如Google的搜索框效果如下: 这里介绍一个jQuery实现搜索关键字自动匹配提示方法.jQuery AutoComplete 是一个基于jQuery实现搜索关键字自动匹配提示的插件,该插件可扩展性强,表现性能优越,方便整合到自己的项目中使用:兼容IE 6.0+, FF 2+, Safari 2.0+, Opera

Jquery插件仿百度搜索关键字自动匹配功能_jquery

本文实例为大家分享了Jquery搜索关键字自动匹配功能的实现代码,供大家参考,具体内容如下jQuery AutoComplete 是一个基于jQuery实现搜索关键字自动匹配提示的插件,该插件可扩展性强,表现性能优越,方便整合到自己的项目中使用:兼容IE 6.0+, FF 2+, Safari 2.0+, Opera 9.0+, and Chrome 1.0+ 等主流浏览器. 下面是具体的使用方法: 1.使用设置 首页,要把插件的js代码嵌入到你自己的项目中去. 复制代码 代码如下: <scri

初学者的忧伤-实现类似百度搜索效果,输入关键字(都是英文),将查出来的内容的关键字标红

问题描述 实现类似百度搜索效果,输入关键字(都是英文),将查出来的内容的关键字标红 我现在需要输入关键字,从数据库查出内容,并在显示时候将关键字标红.(该功能很好实现) 我现在遇到的问题是,我该如何实现替换之后显示的内容和之前数据库中查出的内容关键字位置大小写一致. 附上我写的代码: article.getArticleTitle()是数据库中的字段.search是输入的关键字 article.getArticleTitle().replaceAll("(?i)" + search,