<h1>百度搜索</h1>
<!--建立一个DIV,其中包括一个文本输入框和一个按钮-->
<div id="sousuo">

  <input type="text" id="txt"/><input type="button" id="btn" value="搜索" />
  <!--再建一个DIV用于显示关键字查询出的数据-->
  <div id="liebiao">
    <ul></ul>
  </div>
</div>

<!--建立一个TABLE表格,用于显示搜索内容的详细信息-->
<table id="tb" border="1" cellpadding="0" cellspacing="0" width="80%">
</table>

</body>
<!--用JQuery创建所需的事件-->
<script type="text/javascript">
$(document).ready(function(e) {
  //文本输入自动索引事件
  $("#txt").keyup(function(){
  //定义变量接收文本框中的值
    var txt=$("#txt").val();
    //判断文本框中是否有内容,
    if(txt.length>0)
    {
      //显示相似内容的详情
      XanShi();
      //列表内容长度大于0时,显示查询列表
      $("#liebiao").show();
      $("#tb").show();
      //调用AJAX方法
      $.ajax({
        async:false, //更改为同步执行
        url:"txtchuli.php",
        data:{a:txt,bs:0}, //传递的数据中添加一条自定义属性,以便于区分在处理页面中执行哪种操作
        type:"GET",
        dataType:"TEXT",
        success: function(data){
          //将返回的字符串拆分成数组
          var hang = data.trim().split("|");
          //alert(hang);
          var str = "";
          //对数组中的每组数据进行遍历
          for(var i=0;i<hang.length;i++)
          {
            str = str+"<li class='aa'>"+hang[i]+"</li>";
          }
          //将遍历出的数据放入页面中显示
          $("ul").html(str);
        }
      })
    }
    else
    {
      //如果文本框中内容长度不大于0则隐藏该列表
      $("#liebiao").hide();
      $("#tb").hide();
    }
    //鼠标经过事件
    $(".aa").mouseenter(function(){
      //初始化所有UL的背景色
      $(".aa").css("background-color","white");
      //改变经过的UL的背景色
      $(this).css("background-color","#F00");
      //设置鼠标样式
      $(this).css("cursor","pointer");
    })
    //鼠标离开事件
    $(".aa").mouseleave(function(){
      //改变离开的 UL的背景色
      $(this).css("background-color","white");
    })
    //鼠标点击选中事件
    $(".aa").click(function(){
      //取到被选中的项的内容,放入变量top中
      var top=$(this).text();
      //将取到的内容放入文本框中
      $("#txt").val(top);
      //隐藏查询列表
      $("#liebiao").css("display","none");
      //选中后显示选中内容的详细情况
      XanShi();
    })
  })
});
//创建一个显示详情的事件
function XanShi(){

  var txt= $("#txt").val();
  $.ajax({
    async:false, //更改为同步执行
    url:"txtchuli.php",
    data:{a:txt,bs:1}, //传递的数据中添加一条自定义属性,以便于区分在处理页面中执行哪种操作
    type:"GET",
    dataType:"TEXT",
    success: function(data){
      //拆分传回的数据,得到每行的数据
      var hang =data.trim().split("|");
      //创建表格初始内容
      var str="<tr><td>地区编号</td><td>地区名称</td><td>上级地区编号</td></tr>";
      //对拆分后的数据进行循环遍历
      for (var i=0;i<hang.length;i++)
      {
        //将每行数据再拆分出每列的数据
        var lie=hang[i].split("^");
        //创建拼接表格数据
        str=str+"<tr><td>"+lie[0]+"</td><td>"+lie[1]+"</td><td>"+lie[2]+"</td></tr>"
      }
      //将拼接好的数据带回到页面中显示
      $("#tb").html(str);
    }
  })
}

</script>

仿百度搜索(AJAX)的更多相关文章

  1. 利用autocomplete.js实现仿百度搜索效果(ajax动态获取后端[C#]数据)

    实现功能描述: 1.实现搜索框的智能提示 2.第二次浏览器缓存结果 3.实现仿百度搜索 <!DOCTYPE html> <html xmlns="http://www.w3 ...

  2. vue-resource使用 (vue仿百度搜索)

    1.this.$http.get()方法2.this.$http.post()方法3.this.$http.jsonp()方法 (vue仿百度搜索) 在输入框中输入a, 然后在百度f12 ==> ...

  3. Springboot+Vue实现仿百度搜索自动提示框匹配查询功能

    案例功能效果图 前端初始页面 输入搜索信息页面 点击查询结果页面 环境介绍 前端:vue 后端:springboot jdk:1.8及以上 数据库:mysql 核心代码介绍 TypeCtrler .j ...

  4. jquery 仿百度搜索下拉框的插件

    转载地址:http://www.open-open.com/lib/view/open1420624048437.html 今天写了个下拉插件分享出来 效果: , 可以搜素,也可以使用上下键选择匹配出 ...

  5. js搜索框 js仿百度搜索 js下拉框 jQuery.Autocomplete使用

    做了一个网站,需要根据文本框的输入模糊搜索数据库内容给出提示供用户选择,就找到了jQuery.Autocomplete 效果如下图: 该插件托管在github上,具体地址:https://github ...

  6. 使用Jquery UI 高仿百度搜索下拉列表功能

    最近项目有个需求,在新添加商户的时候,用户输入商户名称后,如果系统中有类似的商户名称,直接显示出来,如下图的效果: 实现这个功能,直接使用了JQuery UI 插件 目前我使用的实现版本是: 网友可以 ...

  7. 15行Python 仿百度搜索引擎

    开发工具:PyCharm 开发环境:python3.6 + flask + requests 开发流程: 1. 启动一个web服务 from flask import Flask app = Flas ...

  8. Ajax以及类似百度搜索框的demo

    public class Ajax01 extends HttpServlet{ @Override protected void service(HttpServletRequest request ...

  9. Ajax跨域实现淘宝/百度搜索下拉提示效果

    最近学到Ajax,觉得自己对与前后端的数据交互有了一个基本的了解.下面是Ajax应用到淘宝/百度的搜索功能的一个简单的小实例,就是输入一个词,下拉框中自动显示匹配的内容:

随机推荐

  1. PL/SQL Developer使用

    查询存储过程方法:1.右上角小百页 - 新建SQL窗口 - 复制存储过程名称 - 按住CTRL - 点击链接进入2.点击查询按钮(望远镜) - 文本查找输入名称 - 对象类型默认(函数.过程,包说明, ...

  2. php final static const成员属性用法

    http://www.111cn.net/phper/php/38976.htm 首先来说说final 1.final不能用来修饰成员属性 2.final只能修饰类和方法 作用:被修饰的类不能被子类所 ...

  3. phpMyAdmin提示“Access denied for user 'root'@'localhost' (using password: NO)”的解决办法

    一.错误内容 在用thinkPHP登陆phpMyAdmin时遇到以下错误 #1045 - Access denied for user 'root'@'localhost' (using passwo ...

  4. php中iconv函数使用方法

    最近在做一个程序,需要用到iconv函数把抓取来过的utf-8编码的页面转成gb2312, 发现只有用iconv函数把抓取过来的数据一转码数据就会无缘无故的少一些. iconv函数库能够完成各种字符集 ...

  5. yii 计划任务

    Yii框架自动生成的Web应用骨架的目录里面有连个脚步文件,yiic和yiic.bat. yiic是Unix/Linux平台用的,yiic.bat是windows平台用的.如果要查看脚本的帮助可以进入 ...

  6. 全排列 (codevs 1294)题解

    [题目描述] 给出一个n, 请输出n的所有全排列(按字典序输出). [样例输入] 3 [样例输出] 1 2 3 1 3 2 2 1 3 2 3 1 3 1 2 3 2 1 [解题思路] 听说C++有作 ...

  7. ORM之Dapper操作Sql Server和MySql数据库

    1.为什么选择Dapper 1)轻量. 2)速度快.Dapper的速度接近与IDataReader,取列表的数据超过了DataTable. 3)支持多种数据库.Dapper可以在所有Ado.net P ...

  8. Linq的一些记录

    1. IQueryable接口与IEnumberable接口的区别:  IEnumerable<T> 泛型类在调用自己的SKip 和 Take 等扩展方法之前数据就已经加载在本地内存里了, ...

  9. Ajax 异步调用代码

    function jsAjax() { var Con; var XmlRequset; var AjaxContent; //返回内容 if (window.XMLHttpRequest) { // ...

  10. 数据库事务故障恢复undo日志检查点

      checkpoint 检查点 checkpoint,即检查点.在undolog中写入检查点,表示在checkpoint前的事务都已经完成commit或者rollback 了,也就是检查点前面的事务 ...