仿百度搜索(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#桌面小软件
这是以前练习时用c#做的桌面小软件,今天回顾下. 这是设计界面 可以看出该程序能够播放网络歌曲及浏览新闻. 实现:歌曲来源百度API,播放WindowsMediaPlayer api地址:string ...
- 软件工程 speedsnail 冲刺5
2015-5-9 完成任务:学习了黑马android教学视频10\11\12集,填写游戏人的姓名功能为明天的记分板准备: 遇到问题: 问题1 Suspicious method call; shoul ...
- CSS计数器与动态计数呈现
代码: CSS代码: body { counter-reset: icecream; } input:checked { counter-increment: icecream; } .total:: ...
- postgresql 入门(含java、scala连接代码)
1.下载安装包 官网:http://www.postgresql.org/download/ 按自己需求,下载安装包, 我下载的windows版32位的.http://get.enterprisedb ...
- 【转】CSS white-space 属性
定义和用法 white-space 属性设置如何处理元素内的空白. 这个属性声明建立布局过程中如何处理元素中的空白符.值 pre-wrap 和 pre-line 是 CSS 2.1 中新增的. 默认值 ...
- 【转】Spark 体系结构
原文地址:http://jerryshao.me/architecture/2013/03/29/spark-overview/ 援引@JerryLead的系统架构图作为Spark整体结构的一个 bi ...
- ajax向前台输出二维数组 并解析
最近在弄一个售后数据统计的功能,里边需要统计特定时期内各种客户.机型的分布比例,单单table来计算并显示很死板(一点也不酷) 于是决定用jquery插件flot并通过ajax传输数据 :flot的折 ...
- C#发送邮件源码
介绍 SMTP(Simple Mail Transfer Protocol)即简单邮件传输协议,它是一组用于由源地址到目的地址传送邮件的规则,由它来控制信件的中转方式.SMTP协议属于TCP/IP协议 ...
- Java 第七天 动态代理
代理类需实现InvocationHandler接口: public interface InvocationHandler { public Object invoke(Object proxy,Me ...
- hashCode()和toString()
hashCode函数和toString函数也在Object类中,同样,所有的类都继承了这2个函数. hashCode函数用于生成哈希码,没有参数,返回值为整型 把u的值作为键存入map中,使用get方 ...