jquery ui autoComplete自动完成
官网:http://jqueryui.com/autocomplete
最简单的形式:
var availableTags = [
"ActionScript",
"AppleScript",
"Asp",
"BASIC",
"C",
"C++",
"Clojure",
];
$( "#tags" ).autocomplete({
source: availableTags
});
数据源source有多种形式:
source:
Type: Array or String or Function( Object request, Function response( Object data ) )
none; must be specifiedIndependent of the variant you use, the label is always treated as text. If you want the label to be treated as html you can use Scott González' html extension. The demos all focus on different variations of the source option - look for one that matches your use case, and check out the code.
Multiple types supported:
- Array: An array can be used for local data. There are two supported formats:
- An array of strings:
[ "Choice1", "Choice2" ] - An array of objects with
labelandvalueproperties:[ { label: "Choice1", value: "value1" }, ... ]
The label property is displayed in the suggestion menu. The value will be inserted into the input element when a user selects an item. If just one property is specified, it will be used for both, e.g., if you provide only
valueproperties, the value will also be used as the label. - An array of strings:
- String: When a string is used, the Autocomplete plugin expects that string to point to a URL resource that will return JSON data. It can be on the same host or on a different one (must provide JSONP). The Autocomplete plugin does not filter the results, instead a query string is added with a
termfield, which the server-side script should use for filtering the results. For example, if thesourceoption is set to"http://example.com"and the user typesfoo, a GET request would be made tohttp://example.com?term=foo. The data itself can be in the same format as the local data described above. - Function: The third variation, a callback, provides the most flexibility and can be used to connect any data source to Autocomplete. The callback gets two arguments:
- A
requestobject, with a singletermproperty, which refers to the value currently in the text input.(输入框的值) For example, if the user enters"new yo"in a city field, the Autocomplete term will equal"new yo". - A
responsecallback, which expects a single argument: the data to suggest to the user. This data should be filtered based on the provided term, and can be in any of the formats described above for simple local data. It's important when providing a custom source callback to handle errors during the request. You must always call theresponsecallback even if you encounter an error. This ensures that the widget always has the correct state.
When filtering data locally, you can make use of the built-in
$.ui.autocomplete.escapeRegexfunction. It'll take a single string argument and escape all regex characters, making the result safe to pass tonew RegExp(). - A
Code examples:
Initialize the autocomplete with the source option specified:
|
1
|
$( ".selector" ).autocomplete({ source: [ "c++", "java", "php", "coldfusion", "javascript", "asp", "ruby" ] }); |
Get or set the source option, after initialization:
var source = $( ".selector" ).autocomplete( "option", "source" );// setter$( ".selector" ).autocomplete( "option", "source", [ "c++", "java", "php", "coldfusion", "javascript", "asp", "ruby" ] );、 var Cache=[];
var firstLoaded=true;
$(".input").autocomplete({
minLength:,
source: Cache
}).focus(function(){
var that=$(this);
if(firstLoaded)
{
var ret=[];
$.getJSON('url',{},function(data){
for(var i in data)
{
ret.push(data[i]);
}
Cache=ret;
firstLoaded=false;
that.autocomplete({ source: Cache});//一定要重新载入
that.autocomplete('search');
});
}
else
{
that.autocomplete('search');
}
});
我以为在初始化是
source: Cache指向的是引用,ajax更改了cache的值应该会起作用的,可是事与愿违,必须,重新调用
that.autocomplete({ source: Cache});方可起作用。
上面的例子也演示了如何当input获得焦点时立即显示自动完成。这里有2个关键字。
focus函数,调用autocomplete触发search,还有一点是设置maxLength为0,因为search函数Triggered before a search is performed, after minLength and delay are met. If canceled, then no request will be started and no items suggested.
jquery ui autoComplete自动完成的更多相关文章
- jQuery UI Autocomplete是jQuery UI的自动完成组件(share)
官网:http://jqueryui.com/autocomplete/ 以下分享自:http://www.cnblogs.com/yuzhongwusan/archive/2012/06/04/25 ...
- jQuery UI Autocomplete是jQuery UI的自动完成组件
支持的数据源 jQuery UI Autocomplete主要支持字符串Array.JSON两种数据格式. 普通的Array格式没有什么特殊的,如下: ? 1 ["cnblogs" ...
- 可输入自动匹配Select——jquery ui autocomplete
<!doctype html> <html lang="en"> <head> <meta charset="utf-8&quo ...
- jQuery UI AutoComplete的使用
现场提出优化单,Table Mapping里关于获取数据源下所有表名的地方由于表数量过多选择不便,需添加搜索功能.原本的实现是一个Dialog ,现打算将其改为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下拉列表样式失效解决,三种获取数据源方式,
jQuery有很多很多的已经实现,很漂亮的插件,autocomplete就是其中之一.jQuery ui autocomplete主要支持字符串Array.JSON两种数据格式,jQuery ui b ...
- jQuery UI Autocomplete Combobox 配 ASP.NET DropDownList
0.引言 1.起因 一开始使用Autocomplete做了一个自动补全的文本框,如上图.后来因业务需要希望能在这个文本框的边上做个下拉列表按钮,一按就展开所有支持 ...
- jQuery ui autocomplete选择列表被Bootstrap模态窗遮挡的完美解决方法
转:http://www.cnblogs.com/wiseant/p/4553837.html 最近在一个ASP.NET MVC5项目中使用Bootstrap的模态窗(弹出层)来让用户填写内容,其中的 ...
随机推荐
- Poj 3117 World Cup
1.Link: http://poj.org/problem?id=3117 2.Content: World Cup Time Limit: 1000MS Memory Limit: 65536 ...
- 升级ssh编译错误
升级ssh 编译的时候遇到PAM headers not found,然后需要安装 pam-devel-1.1.1-20.el6.x86_64,自己下载了rpm包,安装报错,然后用yum -y ins ...
- oracle通过透明网关连接mysql的配置
之前配置过连接TD的,这一篇是介绍连接Mysql的配置很详细. http://blog.itpub.net/12679300/viewspace-1177222/
- Android:使用命令行工具adb、mksdcard等
有一些Android的工具需要在命令行的环境中运行,只是可以选择Windows的开始->运行,键入cmd并确定,进入命令行的界面中运行.主要的命令行工具包括adb和mksdcard等.命令行的工 ...
- 1076. Forwards on Weibo (30)
时间限制 3000 ms 内存限制 65536 kB 代码长度限制 16000 B 判题程序 Standard 作者 CHEN, Yue Weibo is known as the Chinese v ...
- 第1章 Git的版本控制之道
版本控制系统(Version Control System,VCS)可以帮助我们记录和跟踪项目中各文件内容的修改变化. 1.1 版本库 版本库(Repository)是版本控制系统用来存储所有历史数据 ...
- EXTJS4.2 控件之Grid 根据数据源某列数据不同绑定不同的控件setEditor
Grid 根据数据源某列数据不同绑定不同的控件,例如:文本框和下拉框 主要代码写在grid的 plugins: [rowEditing],下面这是定义的rowEditing对象,这里面的要定义成 E ...
- UML include、generalization、extend、association
1.别人的说法 转自:http://www.cnblogs.com/shinings/archive/2009/04/21/1440765.html 共性:都是从现有的用例中抽取出公共的那部分信息,作 ...
- 获取不变的UDID-b
iOS唯一标识的历史历程 iOS 6.0 在iOS6.0以前,是使用uniqueIdentifier来获取手机的唯一标识,后来苹果感觉这样会泄露用户隐藏,就封掉了这个方法: iOS 6.0系统新增了两 ...
- iOS 跳转到系统的设置界面-b
在项目中,我们经常会碰到使用位置的需求.当用户设置app不允许使用位置的时候,最好的用户体验就是直接调转到系统的位置设置界面,进行设置. 本人已经测试,在5c iOS8.3系统 和 5s iOS7.1 ...