仿百度搜索(AJAX)
<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)的更多相关文章
- 利用autocomplete.js实现仿百度搜索效果(ajax动态获取后端[C#]数据)
实现功能描述: 1.实现搜索框的智能提示 2.第二次浏览器缓存结果 3.实现仿百度搜索 <!DOCTYPE html> <html xmlns="http://www.w3 ...
- vue-resource使用 (vue仿百度搜索)
1.this.$http.get()方法2.this.$http.post()方法3.this.$http.jsonp()方法 (vue仿百度搜索) 在输入框中输入a, 然后在百度f12 ==> ...
- Springboot+Vue实现仿百度搜索自动提示框匹配查询功能
案例功能效果图 前端初始页面 输入搜索信息页面 点击查询结果页面 环境介绍 前端:vue 后端:springboot jdk:1.8及以上 数据库:mysql 核心代码介绍 TypeCtrler .j ...
- jquery 仿百度搜索下拉框的插件
转载地址:http://www.open-open.com/lib/view/open1420624048437.html 今天写了个下拉插件分享出来 效果: , 可以搜素,也可以使用上下键选择匹配出 ...
- js搜索框 js仿百度搜索 js下拉框 jQuery.Autocomplete使用
做了一个网站,需要根据文本框的输入模糊搜索数据库内容给出提示供用户选择,就找到了jQuery.Autocomplete 效果如下图: 该插件托管在github上,具体地址:https://github ...
- 使用Jquery UI 高仿百度搜索下拉列表功能
最近项目有个需求,在新添加商户的时候,用户输入商户名称后,如果系统中有类似的商户名称,直接显示出来,如下图的效果: 实现这个功能,直接使用了JQuery UI 插件 目前我使用的实现版本是: 网友可以 ...
- 15行Python 仿百度搜索引擎
开发工具:PyCharm 开发环境:python3.6 + flask + requests 开发流程: 1. 启动一个web服务 from flask import Flask app = Flas ...
- Ajax以及类似百度搜索框的demo
public class Ajax01 extends HttpServlet{ @Override protected void service(HttpServletRequest request ...
- Ajax跨域实现淘宝/百度搜索下拉提示效果
最近学到Ajax,觉得自己对与前后端的数据交互有了一个基本的了解.下面是Ajax应用到淘宝/百度的搜索功能的一个简单的小实例,就是输入一个词,下拉框中自动显示匹配的内容:
随机推荐
- C++ sstream 中处理字符串
C++引入ostringstream.istringstream.stringstream这三个类,要使用他们创建对象就必须包含<sstream>这个头文件. istringstream的 ...
- 在oracle中通过链接服务器(dblink)访问sql server
在oracle中通过链接服务器(dblink)访问sql server 2013-10-16 一. 工作环境: <1> Oracle数据库版本:Oracle 11g 运行环境 :IB ...
- project 2010 使用技巧
快捷键 设置任务子任务 ALT+SHIFT+向右方向键 1.工作时间设置 新建一个日历后,可以在 “项目 >> 项目信息 >> 日历” 中进行选择
- redis 入门
1.命令行工具 在windows上巧命令行指令,实在是令人痛苦,本人实在是受不了windows下cmd的笨,powershell的蠢,只能换一个了. 介绍一款cmd工具cmder(github上开源) ...
- ElasticSearch.js
ElasticSearch是一个基于Lucene的搜索服务器.它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口.Elasticsearch是用Java开发的,并作为Apach ...
- 在一般处理程序中,把Form Post过来的表单集合转换成对象 ,仿 MVC post,反射原理
using System; using System.Collections.Generic; using System.Collections.Specialized; using System.L ...
- Oracle之Linux下核心参数
kernel.shmmax 用于定义单个共享内存段的最大值: 建议一个大的共享内存段能容纳整个SGA,这样在任何时候都不会有性能下降的隐患: 建议:32位Linux 物理内存大于4G 的设置为4G 即 ...
- 自学Python一 迷茫中的开端!
有心学习一下Python,多门技术多条路啊.经历了找教程,看代码,写demo,这东西入门容易精通难啊!又因为请了两周婚假彻底忘光光.想了想自己还是边复习边写点什么东西吧.很多技术,新东西都是看了n多, ...
- Oracle Database Links解析
什么是Database Links呢? 首先我们阐述下它的作用:使用户可以通过一个数据库访问到另外一个远程数据库. 那么Database Link是存储着远程数据库的连接信息. 如下图所示: 用户Sc ...
- hdu 3288 Resource Allocation
题目连接 http://acm.hdu.edu.cn/showproblem.php?pid=3288 Resource Allocation Description HDU-Sailormoon i ...