jquery仿搜索自动联想功能代码


Posted in Javascript onMay 23, 2014
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> 
<html> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> 
<title>Insert title here</title> 
<style type="text/css"> 
body{margin:0px;padding:0px;} 
ul{margin:px;padding:0px;list-style-type:none;} 
</style> 
<script src="jquery-1.8/jquery-1.8.0.js"></script> 
<script> 
$(function(){ 
a(); 
onclick(); 
$("#txt").bind("keyup",function(){ 
txtchange(0); 
}); }); 
function a(){ 
ularray=[]; 
var data=[{1:11},{1:12},{1:22},{1:33},{1:123}]; 
//给ul传入数据 
var ul=$("#ul1"); 
$.each(data,function(index,item) 
{ 
var li=$("<li></li>"); 
$.each(item,function(name,value) 
{ 
var span=$("<span></span>").html(value); 
li.append(span); 
ularray.push(value); 
}); 
ul.append(li); 
}); 
//排序 
ularray.sort(); 
}; 
//keyup事件 
function txtchange(flag) 
{ 
var textObj=$("#txt").val(); 
var divObj=$("#div1").html(); 
var array=[]; 
with(divObj) 
{ 
var ulHTML=divObj.match(/<[^>]*>/)[0];//拿到开始标签 
val = ularray+ ""; //转为字符串 
for(var i=0;i<ularray.length;i++) 
{ 
if(val.split(",")[i].indexOf(textObj)!==-1||flag) //分割成字符串数组 
{ 
array[array.length]="<li><span>"+ularray[i]+"</span></li>"; 
}; 
};//把新得到的集合放入数组 
var liHtml = ""; 
$.each(array,function(item,val){ 
liHtml += val; 
});//去掉数组间逗号 
divObj=ulHTML+liHtml+"</ul>"; 
$("#ul1").html(divObj); 
onclick(); //让新得到的数组拥有点击功能 
}; 
}; 
//span单击事件 
function onclick(){ 
$("#ul1 li span").click(function() 
{ 
var oli=$(this); 
var otxt=$(this).html(); 
$("#txt").empty().val(otxt); 
}); 
}; 
</script> 
</head> 
<body > 
<center> 
<form> 
<input id="txt" type="text" /> 
自动提示 
<div id="div1"> 
<ul id="ul1" > 
</ul> 
</div> 
</form> 
</center> 
</body> 
</html>
Javascript 相关文章推荐
js循环改变div颜色具体方法
Jun 25 Javascript
Json序列化和反序列化方法解析
Dec 19 Javascript
jQuery绑定事件不执行但alert后可以正常执行
Jun 03 Javascript
jquery分割字符串的方法
Jun 24 Javascript
详解基于node的前端项目编译时内存溢出问题
Aug 01 Javascript
AngularJS中table表格基本操作示例
Oct 10 Javascript
Vue.js最佳实践(五招助你成为vuejs大师)
May 04 Javascript
cdn模式下vue的基本用法详解
Oct 07 Javascript
JS算法题之查找数字在数组中的索引位置
May 15 Javascript
Vue使用axios出现options请求方法
May 30 Javascript
微信小程序实现图片翻转效果的实例代码
Sep 20 Javascript
ant design vue 表格table 默认勾选几项的操作
Oct 31 Javascript
jQuery 获取/设置/删除DOM元素的属性以a元素为例
May 23 #Javascript
jQuery 获取、设置HTML或TEXT内容的两种方法
May 23 #Javascript
jQuery 获取兄弟元素的几种不错方法
May 23 #Javascript
jquery 中的each()跳出循环的语句
May 23 #Javascript
Jquery给基本控件的取值、赋值示例
May 23 #Javascript
js动态修改整个页面样式达到换肤效果
May 23 #Javascript
js统计录入文本框中字符的个数并加以限制不超过多少
May 23 #Javascript
You might like
投票管理程序
2006/10/09 PHP
destoon实现首页显示供应、企业、资讯条数的方法
2014/07/15 PHP
微信支付扫码支付php版
2016/07/22 PHP
thinkphp隐藏index.php/home并允许访问其他模块的实现方法
2016/10/13 PHP
php curl获取https页面内容,不直接输出返回结果的设置方法
2019/01/15 PHP
YUI 读码日记之 YAHOO.lang.is*
2008/03/22 Javascript
javascript 验证日期的函数
2010/03/18 Javascript
JavaScript 模拟类机制及私有变量的方法及思路
2013/07/10 Javascript
jquery ajax,ashx,json的用法总结
2014/02/12 Javascript
javascript与有限状态机详解
2014/05/08 Javascript
Javascript URI 解析介绍
2015/03/15 Javascript
多个jQuery版本共存的处理方案
2015/03/17 Javascript
详解JavaScript中的forEach()方法的使用
2015/06/08 Javascript
JS实现浏览器状态栏文字从右向左弹出效果代码
2015/10/27 Javascript
nodejs搭建本地服务器并访问文件操作示例
2019/05/11 NodeJs
vue的三种图片引入方式代码实例
2019/11/19 Javascript
解决vue的router组件component在import时不能使用变量问题
2020/07/26 Javascript
解决vuex改变了state的值,但是页面没有更新的问题
2020/11/12 Javascript
[01:11:32]VG vs FNATIC 2019国际邀请赛小组赛 BO2 第二场 8.15
2019/08/17 DOTA
Python实现子类调用父类的方法
2014/11/10 Python
Python中threading模块join函数用法实例分析
2015/06/04 Python
Python+OpenCV实现图像融合的原理及代码
2018/12/03 Python
Python API 自动化实战详解(纯代码)
2019/06/11 Python
python 计算数据偏差和峰度的方法
2019/06/29 Python
python 求定积分和不定积分示例
2019/11/20 Python
django admin 添加自定义链接方式
2020/03/11 Python
亚洲颇具影响力的男性在线购物零售商:His
2019/11/24 全球购物
Oracle的内存结构(Memory structures)
2015/06/10 面试题
校园新闻广播稿
2014/01/10 职场文书
护理工作感言
2014/01/16 职场文书
运动会稿件200字
2014/02/07 职场文书
六年级学生评语
2014/04/22 职场文书
写作之关于描写老人的好段摘抄
2019/11/14 职场文书
话题作文之自信作文
2019/11/15 职场文书
python 如何将两个实数矩阵合并为一个复数矩阵
2021/05/19 Python
Python+腾讯云服务器实现每日自动健康打卡
2021/12/06 Python