Jquery AutoComplete自动完成 的使用方法实例


Posted in Javascript onMarch 19, 2010

jquery-autocomplete配置:
<script type="text/javascript" src="/js/jquery-1.4.2.min.js"></script>
<script type="text/javascript" src="/js/jquery.autocomplete.min.js"></script>
<link rel="Stylesheet" href="/js/jquery.autocomplete.css" />

首先是一个最简单的Autocomplete(自动完成)代码片段:

<html xmlns="http://www.w3.org/1999/xhtml"> 
<head runat="server"> 
<title>AutoComplate</title> 
<script type="text/javascript" src="/js/jquery-1.4.2.min.js"></script> 
<script type="text/javascript" src="/js/jquery.autocomplete.min.js"></script> 
<link rel="Stylesheet" href="/js/jquery.autocomplete.css" /> 
<script type="text/javascript"> 
$(function() { 
var data = "Core Selectors Attributes Traversing Manipulation CSS Events Effects Ajax Utilities".split(" "); $('#keyword').autocomplete(data).result(function(event, data, formatted) { 
alert(data); 
}); 
}); 
</script> 
</head> 
<body> 
<form id="form1" runat="server"> 
<div> 
<input id="keyword" /> 
<input id="getValue" value="GetValue" type="button" /> 
</div> 
</form> 
</body> 
</html>

result方法是jQuery Autocomplete插件里的重要方法,它在用户在选定了某个条目时触发。data参数为选中的数据。

一个稍微复杂的例子,可以自定义提示列表:

<html xmlns="http://www.w3.org/1999/xhtml"> 
<head runat="server"> 
<title>自定义提示</title> 
<script type="text/javascript" src="/js/jquery-1.4.2.min.js"></script> 
<script type="text/javascript" src="/js/jquery.autocomplete.min.js"></script> 
<link rel="Stylesheet" href="/js/jquery.autocomplete.css" /> 
<script type="text/javascript"> 
var emails = [ 
{ name: "Peter Pan", to: "peter@pan.de" }, 
{ name: "Molly", to: "molly@yahoo.com" }, 
{ name: "Forneria Marconi", to: "live@japan.jp" }, 
{ name: "Master <em>Sync</em>", to: "205bw@samsung.com" }, 
{ name: "Dr. <strong>Tech</strong> de Log", to: "g15@logitech.com" }, 
{ name: "Don Corleone", to: "don@vegas.com" }, 
{ name: "Mc Chick", to: "info@donalds.org" }, 
{ name: "Donnie Darko", to: "dd@timeshift.info" }, 
{ name: "Quake The Net", to: "webmaster@quakenet.org" }, 
{ name: "Dr. Write", to: "write@writable.com" }, 
{ name: "GG Bond", to: "Bond@qq.com" }, 
{ name: "Zhuzhu Xia", to: "zhuzhu@qq.com" } 
]; $(function() { 
$('#keyword').autocomplete(emails, { 
max: 12, //列表里的条目数 
minChars: 0, //自动完成激活之前填入的最小字符 
width: 400, //提示的宽度,溢出隐藏 
scrollHeight: 300, //提示的高度,溢出显示滚动条 
matchContains: true, //包含匹配,就是data参数里的数据,是否只要包含文本框里的数据就显示 
autoFill: false, //自动填充 
formatItem: function(row, i, max) { 
return i + '/' + max + ':"' + row.name + '"[' + row.to + ']'; 
}, 
formatMatch: function(row, i, max) { 
return row.name + row.to; 
}, 
formatResult: function(row) { 
return row.to; 
} 
}).result(function(event, row, formatted) { 
alert(row.to); 
}); 
}); 
</script> 
</head> 
<body> 
<form id="form1" runat="server"> 
<div> 
<input id="keyword" /> 
<input id="getValue" value="GetValue" type="button" /> 
</div> 
</form> 
</body> 
</html>

formatItem、formatMatch、formatResult是自定提示信息的关键。
formatItem作用在于可以格式化列表中的条目,比如我们加了“I”,让列表里的字显示出了斜体。
formatMatch是配合formatItem使用,作用在于,由于使用了formatItem,所以条目中的内容有所改变,而我们要匹配的是原始的数据,所以用formatMatch做一个调整,使之匹配原始数据,
formatResult是定义最终返回的数据,比如我们还是要返回原始数据,而不是formatItem过的数据。

jquery bassistance.de AutoComplete自动完成效果代码下载

Javascript 相关文章推荐
js如何取消事件冒泡
Sep 23 Javascript
javascript中的throttle和debounce浅析
Jun 06 Javascript
自己编写的支持Ajax验证的JS表单验证插件
May 15 Javascript
Bootstrap零基础学习第一课之模板
Jul 18 Javascript
jQuery下拉菜单的实现代码
Nov 03 Javascript
vue.js学习之递归组件
Dec 13 Javascript
vue自定义指令directive的使用方法
Apr 07 Javascript
一篇文章介绍redux、react-redux、redux-saga总结
May 23 Javascript
实现高性能javascript的注意事项
May 27 Javascript
js实现3D照片墙效果
Oct 28 Javascript
详解vue3.0 diff算法的使用(超详细)
Jul 01 Javascript
解决vue net :ERR_CONNECTION_REFUSED报错问题
Aug 13 Javascript
JavaScript 对象的属性和方法4种不同的类型
Mar 19 #Javascript
jQuery 前的按键判断代码
Mar 19 #Javascript
Javascript 匿名函数及其代码模式原理
Mar 19 #Javascript
JS 有名函数表达式全面解析
Mar 19 #Javascript
Jquery Ajax学习实例6 向WebService发出请求,返回DataSet(XML) 异步调用
Mar 18 #Javascript
JavaScript 高效运行代码分析
Mar 18 #Javascript
JS setCapture 区域外事件捕捉
Mar 18 #Javascript
You might like
消息持续发送的完整例子
2006/10/09 PHP
php escape URL编码
2008/12/10 PHP
PHP fopen 读取带中文URL地址的一点见解
2012/09/25 PHP
PHP 读取大文件的X行到Y行内容的实现代码
2013/06/24 PHP
php使用Cookie控制访问授权的方法
2015/01/21 PHP
php简单定时执行任务的实现方法
2015/02/23 PHP
详解WordPress中创建和添加过滤器的相关PHP函数
2015/12/29 PHP
jquery异步请求实例代码
2011/06/21 Javascript
js异常捕获方法介绍
2013/04/10 Javascript
jQuery中:hidden选择器用法实例
2014/12/30 Javascript
JS实现显示带倒影的图片横排居中放大展示特效实例【测试可用】
2016/08/23 Javascript
nodejs搭建本地http服务器教程
2017/03/13 NodeJs
Node.JS利用PhantomJs抓取网页入门教程
2017/05/19 Javascript
Angular2学习教程之ng中变更检测问题详解
2017/05/28 Javascript
JavaScript实现焦点进入文本框内关闭输入法的核心代码
2017/09/20 Javascript
javaScript实现滚动条事件详解
2020/03/24 Javascript
node使用promise替代回调函数
2018/05/07 Javascript
React组件重构之嵌套+继承及高阶组件详解
2018/07/19 Javascript
详解vue中移动端自适应方案
2019/05/05 Javascript
JS实现点击发送验证码 xx秒后重新发送功能
2019/07/30 Javascript
详解阿里Node.js技术文档之process模块学习指南
2021/01/04 Javascript
python 调试冷知识(小结)
2019/11/11 Python
python安装后的目录在哪里
2020/06/21 Python
全方位了解CSS3的Regions扩展
2015/08/07 HTML / CSS
CSS3制作彩色进度条样式的代码示例分享
2016/06/23 HTML / CSS
HTML5 贪吃蛇游戏实现思路及源代码
2013/09/03 HTML / CSS
西班牙鞋子和箱包在线销售网站:zapatos.es
2020/02/17 全球购物
会计应聘求职信范文
2013/12/17 职场文书
运动会通讯稿500字
2014/02/20 职场文书
清明节扫墓活动方案
2014/03/02 职场文书
委托书模板
2014/04/04 职场文书
大学生演讲稿
2014/04/25 职场文书
甘南现象心得体会
2014/09/11 职场文书
创业计划书之养殖业
2019/10/11 职场文书
Django项目如何获得SSL证书与配置HTTPS
2021/04/30 Python
mysql 获取时间方式
2022/03/20 MySQL