jQuery plugin: Autocomplete 参数及实例
官网:jQuery plugin: Autocomplete
(注:此插件已经不再更新。它的继任者是jQuery UI的一部分,)
此插件依赖于 jquery 1.2.6 --- jquery 1.8.3
1、jquery.autocomplete API
语法: autocomplete(url/data, [options] )
参数: url / data:url或者数组 [options]:可选项
2、[options]:可选项,选项解释如下:
minChars: 0, //至少输入的字符数,default:1;如果设为0,在输入框内双击或者删除内容时显示列表。
width: 220, //下拉框的宽度,default:input元素的宽度
max: 10, //下拉项目的个数,default:10
scrollHeight: 300, // 下拉框的高度, Default: 180
scroll: true, //当结果集大于默认高度时,是否使用滚动条,Default: true
multiple: false, //是否允许输入多个值. Default: false
autoFill: false, // 是否自动填充. Default: false
multipleSeparator: " ", //输入多个字符时,用来分开各个的字符. Default: ","
matchCase:false, //是否开启大小写敏感
selectFirst:true, // 如果设置成true,下拉列表的第一个值将被自动选择, Default: true
matchSubset:true, //是否启用缓存
cacheLength: 10, //缓存的长度.即缓存多少条记录.设成1为不缓存.Default: 10
delay: 20, //击键后的延迟时间(单位毫秒).Default: 远程为400 本地10
mustMatch:false, //如果设置为true,只会允许匹配的结果出现在输入框,当用户输入的是非法字符时,将被清除, Default: false
matchContains:true, //决定比较时是否要在字符串内部查看匹配.Default: false
formatItem: function(row, i, max) { }
//结果中的每一行都会调用这个函数,返回值将用LI元素包含,显示在下拉列表中. 三个参数(row, i, max): 返回的结果数组, 当前处理的行数(从1开始), 当前结果数组元素的个数. Default: none, 表示不指定自定义的处理函数.
formatResult : function(row, i, max) { }
//和formatItem类似,但可以将将要输入到input文本框内的值进行格式化.同样有三个参数,和formatItem一样.Default: none,表示要么是只有数据,要么是使用formatItem提供的值.
formatMatch: function(row) { }
//对每一行数据使用此函数格式化需要查询的数据格式. 返回值是给内部搜索算法使用的. 参数值row
result (function(event, data, formatted){}) //此事件会在用户选中某一项后触发,参数为:event: 事件对象, data: 选中的数据行,formatted:formatResult函数返回的值;
例如: $("#d").result(function(event, data, formatted){alert(formatted);})
extraParams (Object):
//为后台(一般是服务端的脚本)提供更多的参数.和通常的作法一样是使用一个键值对对象.如果传过去的值是{ bar:4 },将会被autocompleter解析成my_autocomplete_backend.php?q=foo&bar=4 (假设当前用户输入了foo). Default: {}
3、实例: 实例下载
<!DOCTYPE HTML >
<html>
<head>
<title>jquery.autocomplete.js 实例</title>
<meta charset="utf-8">
<script type="text/javascript" src="js/jquery.js"></script>
<script type='text/javascript' src='js/jquery.autocomplete.js'></script>
<link rel="stylesheet" type="text/css" href="css/main.css" />
<link rel="stylesheet" type="text/css" href="css/jquery.autocomplete.css" />
<style type="text/css">
p{margin:8px;}
</style>
</head> <body>
<h1 id="banner"><a href="http://bassistance.de/jquery-plugins/jquery-plugin-autocomplete/">jQuery Autocomplete Plugin</a> Demo</h1>
<div id="content">
<form autocomplete="off">
<p>
<label>City1:</label>
<input type="text" id="city1" />
</p> <p>
<label>City2:</label>
<input type="text" id="city2" />
</p> <p>
<label>Tags:</label>
<input type="text" id='tags' />
</p>
<p>
<label>E-Mail:</label>
<input type="text" id="email" />
</p>
</form>
<h3>Result:</h3> <ol id="result"></ol>
</div>
</body>
</html> <script type="text/javascript"> $(function() {
var cities = [
"Aberdeen", "Ada", "Beaverdam", "Bedford","Cuyahoga Falls", "Dayton", "De Graff",
"Fairfield", "Fairpoint", "Groveport", "Grover Hill","Hamden", "Hamersville", "Irondale", "Ironton",
"Jacksontown","Kirby", "Kirkersville", "Lafayette", "Lafferty", "Munroe Falls", "Murray City",
"Oberlin", "Oceola", "Paris", "Parkman", "Ravenna", "Rawson", "Saint Louisville",
"Toledo", "Tontogany", "Wakeman", "Walbridge", "Yorkshire", "Yorkville", "Zoar"
];
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" }
]; $("#tags").autocomplete(["c++", "java", "php", "coldfusion", "javascript", "asp", "ruby", "python", "c", "scala", "groovy", "haskell", "pearl"]); $("#city1").autocomplete(cities); $("#city2").autocomplete(cities, { minChars: 0, //至少输入的字符数,default:1; width: 220, //下拉框的宽度,default:input元素的宽度 max: 10, //下拉项目的个数,default:10 scrollHeight: 300, // 下拉框的高度, Default: 180 scroll: true, //当结果集大于默认高度时,是否使用滚动条,Default: true multiple: false, //是否允许输入多个值. Default: false }); $("#email").autocomplete(emails, {
minChars: 0,
width: 310,
matchContains: "word",
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;
}
}); function log(event, data, formatted) {
$("<li>").html( !data ? "No match!" : "Selected: " + formatted).appendTo("#result");
}
$(":text").result(log) //被选中的插入Result });
</script>
参考:http://www.cnblogs.com/dongqi/archive/2010/04/06/1705510.html
http://bassistance.de/jquery-plugins/jquery-plugin-autocomplete
jQuery plugin: Autocomplete 参数及实例的更多相关文章
- Jquery ui autocomplete简单api
重要说明:与配置选项类似,Autocomplete插件的方法也不是直接调用,而且通过autocomplete()方法进行间接调用.例如: $("#title").autocompl ...
- jquery ui autocomplete 实现点击文本框,出现所有查询信息效果,与bootstrap结合使用修改样式
直接看代码 <!doctype html> <html lang="en"> <head> <meta charset="utf ...
- jQuery UI AutoComplete的使用
现场提出优化单,Table Mapping里关于获取数据源下所有表名的地方由于表数量过多选择不便,需添加搜索功能.原本的实现是一个Dialog ,现打算将其改为AutoComplete. 框架使用的是 ...
- jQuery 插件autocomplete
jQuery 插件autocomplete 自动加载 参考: http://www.cnblogs.com/Peter-Zhang/archive/2011/10/22/2221147.html ht ...
- jQuery ui autocomplete下拉列表样式失效解决,三种获取数据源方式,
jQuery有很多很多的已经实现,很漂亮的插件,autocomplete就是其中之一.jQuery ui autocomplete主要支持字符串Array.JSON两种数据格式,jQuery ui b ...
- jQuery UI Autocomplete是jQuery UI的自动完成组件(share)
官网:http://jqueryui.com/autocomplete/ 以下分享自:http://www.cnblogs.com/yuzhongwusan/archive/2012/06/04/25 ...
- JQuery UI Autocomplete与jquery.autocomplete.js
程序中要把一个select改成可以下拉搜索的,就想到了使用下autocomplete.js大概是这么个东西. 问了下同学,推荐我使用Jquery Ui autocomplete,下载下来开始调试使用, ...
- The ultimate jQuery Plugin List(终极jQuery插件列表)
下面的文章可能出自一位奥地利的作者, 列出很多jQuery的插件.类似的网站:http://jquerylist.com/原文地址: http://www.kollermedia.at/archiv ...
- jQuery.ui autoComplete使用
官网 http://api.jqueryui.com/autocomplete/#option-source 参考了 http://www.cnblogs.com/lwme/archive/2012 ...
随机推荐
- Aggregation 聚集
声明:原创作品,转载时请注明文章来自SAP师太技术博客( 博/客/园www.cnblogs.com):www.cnblogs.com/jiangzhengjun,并以超链接形式标明文章原始出处,否则将 ...
- jquery总结05-常用事件01-鼠标事件
鼠标事件 .click()单机事件 包括.mousedown()(鼠标按下).mouseup()(放松鼠标)两个事件 .dbclick()双击事件 两个click事件,中间的间隔由系统而定 .mou ...
- C++ 不能在类体外指定关键字static
C++ static 函数的问题 近日读 C++ primer 中static 一章 , 有这么一句话, “静态成员函数的声明除了在类体中的函数声明前加上关键字static 以及不能声明为const ...
- DEV GridControl.TableView FocusedRow选中行背景颜色
上次修改了TableView.RowStyle,导致了一个问题:覆盖了GridControl默认的选中行颜色. 于是需要重写选中行的颜色. 刚开始的想法是: <dxg:TableView> ...
- Linux (Ubuntu) 下配置VPN服务器
昨天网上找了下VPN的相关信息,居然各种撞墙,特别郁闷,自己不容易找到的东西,记录下VPN的配置信息 ubuntu 13.1下配置VPN ,采用PPTP实现, 第一步.安装pptpd,没有安装包记得 ...
- PHP 面向对象编程
面向对象——类: 创建一个类: //创建了一个没有内容的Person(人)类 class Person{ } //通过new关键字来 实例化一个类 $teacher = new Person; //t ...
- 收藏的牛人的Backbone分享教程
http://yujianshenbing.iteye.com/category/256978 感谢御剑神兵,目前正在看,为源码分析做准备. 今天是2015年4月13号,看了前两篇,
- 新手入门之GDB调试
写这篇文章算是对最近两天工作的一个经验总结吧. 要让可执行文件比较方便地在DGB上调试,在用gcc编译的时候要使用-g选项. 如何使用GDB启动被调试程序? "gdb path_to_deb ...
- Android M新特性之APP Link
The Android M Developer Preview introduces support for App Links, which improves upon existing link ...
- JVM-并发-Java 内存模型
Java内存模型 (1). 主内存与工作内存 Java内存模型规定了所有的变量都存储在主内存中. 每类线程的变量的主内存副本拷贝,线程对变量的所有操作(读操作,赋值操作等)都必须工作内存中进行,而不能 ...