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 相关文章推荐
JavaScript 一道字符串分解的题目
Aug 03 Javascript
$.ajax返回的JSON无法执行success的解决方法
Sep 09 Javascript
基于jQuery.validate及Bootstrap的tooltip开发气泡样式的表单校验组件思路详解
Jul 18 Javascript
使用ReactJS实现tab页切换、菜单栏切换、手风琴切换和进度条效果
Oct 17 Javascript
gulp加批处理(.bat)实现ng多应用一键自动化构建
Feb 16 Javascript
js实现PC端根据IP定位当前城市地理位置
Feb 22 Javascript
通过npm引用的vue组件使用详解
Mar 02 Javascript
JavaScript+CSS相册特效实例代码
Sep 07 Javascript
详解javascript中的babel到底是什么
Jun 21 Javascript
react build 后打包发布总结
Aug 24 Javascript
Vue和React组件之间的传值方式详解
Jan 31 Javascript
vue报错function () { [native code] },无法出现我们想要的内容 Unknown custom element
Apr 11 Vue.js
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中实现进程间通讯
2006/10/09 PHP
解析PHP对现有搜索引擎的调用
2013/06/25 PHP
JavaScript isArray()函数判断对象类型的种种方法
2010/10/11 Javascript
js 获取时间间隔实现代码
2014/05/12 Javascript
JS实现单击输入框弹出选择框效果完整实例
2015/12/14 Javascript
jQuery操作cookie
2016/08/08 Javascript
jquery实现图片轮播器
2017/05/23 jQuery
vue-cli脚手架-bulid下的配置文件
2018/03/27 Javascript
create-react-app 修改为多入口编译的方法
2018/08/01 Javascript
vue中使用input[type=&quot;file&quot;]实现文件上传功能
2018/09/10 Javascript
javascript自定义右键菜单插件
2019/12/16 Javascript
Python中__new__与__init__方法的区别详解
2015/05/04 Python
python将ansible配置转为json格式实例代码
2017/05/15 Python
Python reduce()函数的用法小结
2017/11/15 Python
Python实现XML文件解析的示例代码
2018/02/05 Python
python 3.6.2 安装配置方法图文教程
2018/09/18 Python
Python 中的参数传递、返回值、浅拷贝、深拷贝
2019/06/25 Python
使用Python计算玩彩票赢钱概率
2019/06/26 Python
python读取当前目录下的CSV文件数据
2020/03/11 Python
浅谈keras中自定义二分类任务评价指标metrics的方法以及代码
2020/06/11 Python
用pandas划分数据集实现训练集和测试集
2020/07/20 Python
python 偷懒技巧——使用 keyboard 录制键盘事件
2020/09/21 Python
详解Canvas 实现炫丽的粒子运动效果(粒子生成文字)
2018/02/01 HTML / CSS
香港草莓网:Strawberrynet香港
2019/05/10 全球购物
提高EJB性能都有哪些技巧
2012/03/25 面试题
环境工程与管理大学毕业生求职信
2013/10/02 职场文书
毕业自我鉴定范文
2013/11/06 职场文书
动漫专业高职生职业生涯规划书
2014/02/15 职场文书
集体婚礼策划方案
2014/02/22 职场文书
教职工代表大会主持词
2014/04/01 职场文书
公司委托书格式范文
2014/04/04 职场文书
银行员工犯错检讨书
2014/09/16 职场文书
Vue.js 带下拉选项的输入框(Textbox with Dropdown)组件
2021/04/17 Vue.js
Django中的JWT身份验证的实现
2021/05/07 Python
解决mysql模糊查询索引失效问题的几种方法
2021/06/18 MySQL
Python将CSV文件转化为HTML文件的操作方法
2021/06/30 Python