重要说明:与配置选项类似,Autocomplete插件的方法也不是直接调用,而且通过autocomplete()方法进行间接调用。例如:

$("#title").autocomplete( "方法名", "参数1", "参数2" );

Autocomplete的方法列表

close()

关闭自动完成显示的菜单。

$( "#title" ).autocomplete( "close" );

destroy()

完全移除自动完成功能。

$( "#title" ).autocomplete( "destroy" );

disable()

禁用Autocomplete。

$( "#title" ).autocomplete( "disable" );

enable()

启用Autocomplete。

$( "#title" ).autocomplete( "enable" );

instance()

返回Autocomplete的对象实例。如果指定元素没有关联的实例,则返回undefined

$( "#title" ).autocomplete( "instance" );

option( [ optionName [, value ] ] )

设置或返回Autocomplete的配置选项。该方法有以下4种形式:

// 形式一:以对象形式返回所有配置选项。
var options = $( "#title" ).autocomplete( "option" ); // 形式二:根据选项名称获取单个配置选项
var isDisabled= $( "#title" ).autocomplete( "option", "disabled" ); // 形式三:设置指定配置选项的值
$( "#title" ).autocomplete( "option", "disabled", true ); // 形式四:以对象形式同时设置一个或多个配置选项的值
$( "#title" ).autocomplete( "option", { "disabled": true, "delay": 500 } );

search( [ value ] )

触发search事件,如果该事件未被取消的话,Autocomplete将调用数据源来显示菜单。如果没有为其指定value参数,它将当前输入元素的值(指定了的话,就使用指定的value值)。

$( "#title" ).autocomplete( "search", "Chin" );

widget()

返回匹配菜单元素的jQuery对象(实际匹配一个div元素,该div内用于放置显示菜单的html内容)。尽管菜单项是即时创建和销毁的,但菜单元素本身并不会重复创建和销毁。它在初始化时被创建,然后一直被重复使用。

$( "#title" ).autocomplete( "widget" );

jQuery UI Autocomplete支持事件处理,我们可以通过为事件绑定处理函数,从而监听并处理对应的事件。

Autocomplete的事件均可以在初始化的时候,以配置选项的形式设置,例如:

$( "#title" ).autocomplete({
change: function( event, ui ) { /* 这里是函数内的代码 */ }
});

你也可以通过jQuery的事件绑定方法,为Autocomplete的指定事件添加处理函数。这使得Autocomplete的事件可以像常见的click、mouseover事件一样,通过jQuery的事件方法进行处理。例如:

// autocompletechange 就是autocomplete插件的change事件
// autocomplete的事件全名均为 "autocomplete"+"具体事件名" $( "#title" ).on("autocompletechange", function( event, ui ) {
/* 这里是函数内的代码 */
} );

Autocomplete的事件列表

change 事件

当输入框失去焦点时,如果其输入内容发生改变,则触发该事件。其事件全名为autocompletechange

$( "#title" ).autocomplete({
change: function( event, ui ) {
// event 是当前事件对象 // ui对象仅有一个item属性,它表示当前选择的菜单项对应的数据源对象
// 该对象具有label和value属性,以及其它自定义(如果有的话)的属性
// 如果当前没有选择的菜单项,这item属性为null
}
});

close 事件

当菜单被隐藏(关闭)时触发该事件。其事件全名为autocompleteclose。并不是每一个change事件都伴随着一个close事件。

$( "#title" ).autocomplete({
close: function( event, ui ) {
// event 是当前事件对象 // ui对象是空的,只是为了和其他事件的参数签名保持一致
}
});

create 事件

当Autocomplete被创建时触发该事件。其事件全名为autocompletecreate

$( "#title" ).autocomplete({
create: function( event, ui ) {
// event 是当前事件对象 // ui对象是空的,只是为了和其他事件的参数签名保持一致
}
});

focus 事件

当任一菜单项获得焦点时触发该事件,该事件只会在通过键盘交互方式使菜单项获得焦点时触发。其事件全名为autocompletefocus。其默认行为是将输入框的文本内容更改为当前选中项的value属性值。

取消该事件的默认行为( event.preventDefault() ),可以阻止输入框的值被更改,但不会阻止菜单项获得焦点。

$( "#title" ).autocomplete({
focus: function( event, ui ) {
// event 是当前事件对象 // ui对象仅有一个item属性,它表示当前获取焦点的菜单项对应的数据源对象
// 该对象具有label和value属性,以及其它自定义(如果有的话)的属性
}
});

open 事件

当菜单显示(打开)或被更新时触发该事件。其事件全名为autocompleteopen

$( "#title" ).autocomplete({
open: function( event, ui ) {
// event 是当前事件对象 // ui对象是空的,只是为了和其他事件的参数签名保持一致
}
});

response 事件

当自动完成的搜索完成,但尚未显示菜单时触发该事件。其事件全名为autocompleteresponse。你可以通过该事件来更改数据,从而修改显示的菜单内容。

$( "#title" ).autocomplete({
response: function( event, ui ) {
// event 是当前事件对象 // ui对象仅有一个content属性,它表示当前用于显示菜单的数组数据
// 每个元素都是具有label和value属性的对象
// 你可以对属性进行更改,从而改变显示的菜单内容
}
});

search 事件

当一次自动完成的搜索被执行前触发该事件。其事件全名为autocompletesearch。如果被取消,则不会开始一个请求,并且不会显示菜单项。

$( "#title" ).autocomplete({
search: function( event, ui ) {
// event 是当前事件对象 // ui对象是空的,只是为了和其他事件的参数签名保持一致
}
});

select 事件

当任一菜单项被选择时触发该事件。其事件全名为autocompleteselect。其默认行为是将输入框的文本内容更改为当前选中项的value属性值。

取消该事件的默认行为( event.preventDefault() ),可以阻止输入框的值被更改,但不会阻止菜单被关闭。

$( "#title" ).autocomplete({
select: function( event, ui ) {
// event 是当前事件对象 // ui对象仅有一个item属性,它表示当前被选中的菜单项对应的数据源对象
// 该对象具有label和value属性,以及其它自定义(如果有的话)的属性
}
});

Jquery ui autocomplete简单api的更多相关文章

  1. jQuery UI AutoComplete的使用

    现场提出优化单,Table Mapping里关于获取数据源下所有表名的地方由于表数量过多选择不便,需添加搜索功能.原本的实现是一个Dialog ,现打算将其改为AutoComplete. 框架使用的是 ...

  2. jQuery ui autocomplete下拉列表样式失效解决,三种获取数据源方式,

    jQuery有很多很多的已经实现,很漂亮的插件,autocomplete就是其中之一.jQuery ui autocomplete主要支持字符串Array.JSON两种数据格式,jQuery ui b ...

  3. jQuery.ui autoComplete使用

    官网  http://api.jqueryui.com/autocomplete/#option-source 参考了 http://www.cnblogs.com/lwme/archive/2012 ...

  4. jQuery UI Autocomplete Combobox 配 ASP.NET DropDownList

    0.引言   1.起因                  一开始使用Autocomplete做了一个自动补全的文本框,如上图.后来因业务需要希望能在这个文本框的边上做个下拉列表按钮,一按就展开所有支持 ...

  5. jQuery UI Autocomplete是jQuery UI的自动完成组件

    支持的数据源 jQuery UI Autocomplete主要支持字符串Array.JSON两种数据格式. 普通的Array格式没有什么特殊的,如下: ? 1 ["cnblogs" ...

  6. jQuery ui autocomplete选择列表被Bootstrap模态窗遮挡的完美解决方法

    转:http://www.cnblogs.com/wiseant/p/4553837.html 最近在一个ASP.NET MVC5项目中使用Bootstrap的模态窗(弹出层)来让用户填写内容,其中的 ...

  7. jquery ui autocomplete 实现点击文本框,出现所有查询信息效果,与bootstrap结合使用修改样式

    直接看代码 <!doctype html> <html lang="en"> <head> <meta charset="utf ...

  8. jQuery UI Autocomplete是jQuery UI的自动完成组件(share)

    官网:http://jqueryui.com/autocomplete/ 以下分享自:http://www.cnblogs.com/yuzhongwusan/archive/2012/06/04/25 ...

  9. JQuery UI Autocomplete与jquery.autocomplete.js

    程序中要把一个select改成可以下拉搜索的,就想到了使用下autocomplete.js大概是这么个东西. 问了下同学,推荐我使用Jquery Ui autocomplete,下载下来开始调试使用, ...

随机推荐

  1. iOS UITableView 分割线从零开始

    第一种(不自己画线): 代码如下 // tableView的分割线从零开始 -(void)viewDidLayoutSubviews { if ([self.tableView respondsToS ...

  2. zepto阻止事件冒泡

    $("#model_frame").on("click",function(){ $(this).hide(); console.log($(this)); } ...

  3. K910 升级Android 4.4.2可用的Google Service Framework

    把手机换成了K910, 看上的是骁龙800的cpu和电子罗盘... 比V987是升级一大截了. 花了一个晚上加半个上午的时间终于搞定了GoogleServiceFramework, 试了大概四五个网上 ...

  4. 协程python

    python中协程 在引出协成概念之前先说说python的进程和线程. 进程: 进程是正在执行程序实例.执行程序的过程中,内核会讲程序代码载入虚拟内存,为程序变量分配空间,建立 bookkeeping ...

  5. Tomcat部署学习

    tomcat也可以称为catalina catalina_home就是tomcat安装路径:D:\Program Files\apache-tomcat-8.0.36\bin     windows下 ...

  6. 基于ASP.NET MVC的热插拔模块式开发框架(OrchardNoCMS)--BootStrap

    按照几个月之前的计划,也应该写一个使用Bootstrap作为OrchardNoCMS的UI库.之前这段时间都是在学习IOS开发,没顾得上写,也没顾得上维护OrchardNoCMS代码.看看我的活动轨迹 ...

  7. React Native中设计主题机制

    昨天和同事讨论组件隔离性的时候讨论到关于默认样式的问题:很多情况下我们希望能够把组件设计为通用的,然后在具体项目中给他们指定一些通用的样式,譬如:背景颜色.默认字体等等.这听起来在CSS下运作起来就很 ...

  8. <实训|第七天>横扫Linux磁盘分区、软件安装障碍附制作软件仓库

    期待已久的linux运维.oracle"培训班"终于开班了,我从已经开始长期四个半月的linux运维.oracle培训,每天白天我会好好学习,晚上回来我会努力更新教程,包括今天学到 ...

  9. 3到6年的.NETer应该掌握哪些知识?

    我们组的开发人力一直比较紧张,今年春节后,高层终于给了几个headcount,我们可以开始招人了.从三月初我们就开始找简历,渠道有拉钩,内推,我司自己的招聘网站和智联等.简历筛了很多,也打了很多电话, ...

  10. .Net简单图片系统-简介

    系统简介 最近做了一个简单图片系统,这个系统就是 将上传的的图片保存到系统本地文件系统或者基于fastdfs的分布式文件系统中,在查看图片时会直接请求此系统或者fastdfs的tracker服务器(需 ...