平时使用谷歌搜索的时候发现只要在文本框里输入部分单词或字母,下面马上会弹出一个相关信息的内容框可供选择。感觉这个功能有较好的用户体验,所以也想在自己的网站上加上这种输入提示框。

实现的原理其实很简单,在输入页面利用JQuery获取用户输入,然后通过AJAX异步发送到处理页面,处理页面接收到值后进行模糊匹配查询,然后将结果返回,输入页收到返回的数据后在处理,并生成相应的页面显示在页面上。这样整个流程就结束了。如图:

输入页可以使用keyup事件接收输入的值并发送到处理页。具体代码如下:

输入页的代码如下:

//对输入提示框的CSS设置

#searchresult{width:302px; position:absolute; left:618px; top:180px;

z-index:1; overflow:hidden; background:#dcf6f8; border:#c5dadb 1px solid;

border-top:none;

}

.line{font-size:12px; color:#000; background:#aed34f; width:302px; padding:2px;}

.hover{background:#007ab8; color:#fff;}

//JQuery代码,别忘了要先引用JQuery的库文件哦。

$(document).ready(function(){

$('#search').keyup(function(){   //输入框的id为search,这里监听输入框的keyup事件

$.ajax({

type:"GET",     //AJAX提交方式为GET提交

url:"/include/ajax_search.php",   //处理页的URL地址

data:"txt_search="+escape($('#search').val()),   //要传递的参数

success:function(data){   //成功后执行的方法

if(data != ""){

var ss;

ss = data.split("@");   //分割返回的字符串

var layer;

layer = "

for(var i=0;i

layer += "

"+ss[i]+"";

}

layer += "

";

$('#searchresult').empty();  //先清空#searchresult下的所有子元素

$('#searchresult').append(layer);//将刚才创建的table插入到#searchresult内

$('.line').hover(function(){  //监听提示框的鼠标悬停事件

$(this).addClass("hover");

},function(){

$(this).removeClass("hover");

});

$('.line').click(function(){  //监听提示框的鼠标单击事件

$('#search').val($(this).text());

});

}else{

$('#searchresult').empty();

}

},

error:function(){alert("O No~~~");}

});

});

});

$(document).ready(function(){

$().click(function(){

$('#searchresult').empty();

});

});

处理页的代码如下:

require_once 'config.php';

$conn = mysql_connect($DBHost,$DBUser,$DBPwd);

mysql_select_db($DBName,$conn);

$result = $_GET["txt_search"];

if($result != ""){

$sql = "SELECT ProductName FROM Product WHERE ProductName LIKE '%{$result}%' LIMIT 10";

$query = mysql_query($sql,$conn) or die(mysql_error());

$num = mysql_num_rows($query);

if($num>0){

$str = "";

while($row = mysql_fetch_array($query)){

$str .= $row["ProductName"]."@";

}

echo $str;

}else{

echo "";

}

}else{

echo "";

}

?>

文本框输入即时Ajax搜索,JQuery+AJAX实现搜索文本框的输入提示功能相关推荐

  1. $.ajax data怎么处理_不会吧,不会吧,不愧是Ajax,jQuery Ajax啊

    Ajax and jQuery Ajax 我们做前端的,肯定不会只满足于写一些静态网页,我们希望做到网站(与服务器)的数据交互.不得不说,现在前端的发展真是太快了,不断的更新迭代,新的技术就如同雨后春 ...

  2. AJAX(三)jQuery AJAX.post

    在jQuery 中也提供了一个比较简单的ajax请求jQuery.post(url, [data], [callback], [type]),如果考虑出错时执行函数该方法不适合,请选择ajax 相对j ...

  3. JS Ajax 和 jQuery Ajax : 异步自动填充

    第四十八章 JS Ajax 和 jQuery Ajax : 异步自动填充 48.1 案例介绍 48.2 案例相关技术 48.2.1 JSON数据 48.2.2 JSON-LIB工具 48.3 案例分析 ...

  4. ajax 文本框 搜索,JQuery+AJAX实现搜索文本框的输入提示功能

    平时使用谷歌搜索的时候发现只要在文本框里输入部分单词或字母,下面马上会弹出一个相关信息的内容框可供选择.感觉这个功能有较好的用户体验,所以也想在自己的网站上加上这种输入提示框. 实现的原理其实很简单, ...

  5. asmx 接受 ajax post,jQuery ajax调用web服务(asmx)触发认证弹出框

    在我的asp.net 4.0电子商务web应用程序中,登录的客户可以点击锚点,如"过去6个月内的订单"或"订单去年"来查看他过去的订单.当点击这样的锚,我做一个 ...

  6. php jquery ajax登录,jQuery+Ajax+PHP弹出层异步登录效果(附源码下载)

    弹出层主要用于展示丰富的页面信息,还有一个更好的应用是弹出表单层丰富交互应用.常见的应用有弹出登录表单层,用户提交登录信息,后台验证登录成功后,弹出层消失,主页面局部刷新用户信息.本文我们将给大家介绍 ...

  7. jq ajax xml,jQuery+ajax读取并解析XML文件的方法

    本文实例讲述了jQuery+ajax读取并解析XML文件的方法.分享给大家供大家参考,具体如下: ajax.xml: zhangsan 1 lisi 2 demo.html: /p> " ...

  8. html+ajax登陆,jQuery+Ajax模拟用户登录功能的实现代码

    摘要 腾兴网为您分享:jQuery+Ajax模拟用户登录功能的实现代码,钻石星球,篆刻字典,中信金通,易码平台等软件知识,以及电视猫app,河南app,红豆婚恋,xvideos本,电子电路,qq约会, ...

  9. jquery ajax步骤,jquery ajax(ajax请求的五个步骤jQuery)

    jqueryajax AJAX是与服务器交流数据的艺术,它在不重载全部页面的情况下,完成了对部分网页的更新. jQueryAJAX实例 请点击下面的按钮,经过jQueryAJAX改变这段文本. 获得外 ...

最新文章

  1. P、NP、NPC问题最通俗的讲解
  2. 基于Redis的分布式锁和Redlock算法
  3. fullpage 单屏高度超过屏幕高度,实现单屏内可以滚动并解决手机端单屏高度不正确的问题
  4. 通过Class来加载输入流和文件
  5. Deploying Kubernetes with CoreDNS using kubeadm
  6. ssh-add Could not open a connection to your authentication agent.
  7. SAP UI5 why failed to load 'sap/cus/crm/lib/reuse/library.js' from resources/sap/cus/crm
  8. java 反射 代码_java反射机制学习代码
  9. 复习Java_List_Set_HashSet原理_Collections使用_Comparator使用
  10. Git 工作区恢复暂存区操作总览
  11. eslint 设置目录_Nuxt项目添加自定义ESLint规则
  12. linux shell中的case语句用法 以及 case default设置
  13. Python 的多文件和注释
  14. SMB协议的共享文件读写
  15. [Go] 理解计算机负数的表示以及整数范围
  16. 内存不能为read或written的解决方案
  17. ChatGPT连接企微
  18. 经典网络架构学习-Transformer
  19. Halcon 第七章『图像的几何变换』◆第1节:图像的仿射变换(位置变换、形状变换)及应用
  20. linux架构师面试题,怎么判断web前端架构师能力高低,前端架构师面试题目

热门文章

  1. 美团面试题:缓存一致性,我是这么回答的!
  2. 面试被吊打 - Redis原理
  3. Kafka 慌了!这个中间件,要火了?
  4. 全面认识UML-类图元素(java)
  5. Hibernate 入门----第一个Hibernate应用程序
  6. USACO翻译:USACO 2012 FEB Silver三题
  7. 小程序成长之路(四)-- 深入腾讯云(环境搭建)
  8. springmvc-实现增删改查
  9. redis-cluster集群单机搭建
  10. 2016年2月流量入口占比动态:搜索引擎大涨2.14%