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 相关文章推荐
jQuery动态设置form表单的enctype值(实现代码)
Jul 04 Javascript
JavaScript Ajax Json实现上下级下拉框联动效果实例代码
Nov 23 Javascript
完美兼容各大浏览器的jQuery插件实现图片切换特效
Dec 12 Javascript
jquery结合CSS使用validate实现漂亮的验证
Jan 29 Javascript
JavaScript实现Base64编码转换
Apr 23 Javascript
原生js实现jquery函数animate()动画效果的简单实例
Aug 21 Javascript
BootStrap表单控件之文本域textarea
May 23 Javascript
Vuejs 2.0 子组件访问/调用父组件的方法(示例代码)
Feb 08 Javascript
JS中移除非数字最多保留一位小数
May 09 Javascript
jquery简单实现纵向的无缝滚动代码实例
Apr 01 jQuery
Vue父组件如何获取子组件中的变量
Jul 24 Javascript
非常漂亮的js烟花效果
Mar 10 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
php self,$this,const,static,-&amp;gt;的使用
2009/10/22 PHP
我的php学习笔记(毕业设计)
2012/02/21 PHP
PHP函数之日期时间函数date()使用详解
2013/09/09 PHP
php中{}大括号是什么意思
2013/12/01 PHP
php的ddos攻击解决方法
2015/01/08 PHP
php基于curl实现的股票信息查询类实例
2016/11/11 PHP
PHP最常用的正则表达式
2017/02/13 PHP
jquery 常用操作整理 基础入门篇
2009/10/14 Javascript
jquery 年会抽奖程序
2011/12/22 Javascript
E3 tree 1.6在Firefox下显示问题的修复方法
2013/01/30 Javascript
快速学习AngularJs HTTP响应拦截器
2015/12/31 Javascript
AngularJS中一般函数参数传递用法分析
2016/11/22 Javascript
bootstrapValidator表单验证插件学习
2016/12/30 Javascript
微信小程序-获得用户输入内容
2017/02/13 Javascript
浅谈JS函数节流防抖
2017/10/18 Javascript
原生JavaScript实现remove()和recover()功能示例
2018/07/24 Javascript
jQuery实现表格隔行换色
2018/09/01 jQuery
如何使用puppet替换文件中的string
2018/12/06 Javascript
JavaScript实现无限级递归树的示例代码
2019/03/29 Javascript
elementui之el-tebs浏览器卡死的问题和使用报错未注册问题
2019/07/06 Javascript
Vue 打包的静态文件不能直接运行的原因及解决办法
2020/11/19 Vue.js
[00:59]DOTA2荣耀之路1:Doom is back!weapon X!
2018/05/22 DOTA
python 字符串格式化代码
2013/03/17 Python
python服务器端收发请求的实现代码
2014/09/29 Python
使用Python开发windows GUI程序入门实例
2014/10/23 Python
python3实现公众号每日定时发送日报和图片
2018/02/24 Python
简单了解python元组tuple相关原理
2019/12/02 Python
Python彻底删除文件夹及其子文件方式
2019/12/23 Python
wxpython自定义下拉列表框过程图解
2020/02/14 Python
QML实现钟表效果
2020/06/02 Python
信息合作协议书
2014/10/09 职场文书
廉政文化进校园广播稿
2014/10/20 职场文书
单位租房协议范本
2014/12/03 职场文书
安全伴我行主题班会
2015/08/13 职场文书
python中mongodb包操作数据库
2022/04/19 Python
Win11如何默认打开软件界面最大化?Win11默认打开软件界面最大化的方法
2022/07/15 数码科技