jQuery UI 自动完成

17 Mar 2025 | 4 分钟阅读

在现代网站中,自动完成机制经常被用来为用户提供建议列表,当用户在文本框中输入开头单词时。 它方便用户从列表中选择一个项目,该项目将显示在输入字段中。 此功能可防止用户必须输入整个单词或一组单词。

jQueryUI 提供了一个自动完成小部件,通过提供建议列表来方便用户在文本框中输入内容。 它的作用很像一个 <select> 下拉列表,但会筛选选项,仅显示与用户在控件中输入的内容匹配的选项。

语法

您可以使用两种形式的 autocomplete() 方法

第一种方法

autocomplete (options) 方法指定一个 HTML <input> 元素必须被管理为一个输入字段,该字段将显示在建议列表的上方。 这里,options 参数是一个对象,它指定了当用户在输入字段中键入时建议列表的行为。

语法

您可以使用 JavaScript 对象一次使用一个或多个选项。如果选项多于一个,则必须使用逗号分隔它们,如下所示

以下是可与此方法一起使用的不同选项的列表

选项描述
appendTo此选项用于将一个元素附加到菜单。 默认情况下,它的值为 null。
autoFocus如果将此选项设置为 TRUE,则当菜单显示时,菜单的第一个项目将自动获得焦点。 默认情况下,它的值为 FALSE。
delay此选项指定在尝试获取匹配值(由 source 选项指定)之前要等待的延迟时间(以毫秒为单位)。 默认情况下,它的值为 300。
disabled如果将此选项设置为 true,则自动完成小部件最初将被禁用。 默认情况下,它的值为 false。
minlength它指定在尝试获取匹配值(由 source 选项指定)之前必须输入的字符数。 默认情况下,它的值为 1。
位置此选项根据输入元素标识建议菜单的位置。 默认情况下,它的值为 { my: "left top", at: "left bottom", collision: "none" }。
source此选项指定获取与输入数据匹配的数据的方式。 您必须提供一个值,否则不会创建自动完成小部件。 默认情况下,它的值为 none; 必须指定。

jQuery UI autocomplete() 示例 1

让我们举一个简单的例子来演示自动完成小部件的功能,不向 autocomplete() 方法传递任何参数。

立即测试

jQuery UI autocomplete() 方法示例 2

在 jQueryUI autocomplete () 方法中使用 autoFocus

让我们举一个例子来演示在 autocomplete 方法中使用 autoFocus 选项。

立即测试

jQuery UI autocomplete() 方法示例 3

在 jQueryUI autocomplete () 方法中使用 minLength 和 delay

让我们举一个例子来演示在 jQueryUI autocomplete() 方法中使用两个选项 minLength 和 delay。

立即测试

jQuery UI autocomplete() 方法示例 4

在 jQueryUI autocomplete () 方法中使用 label

让我们举一个例子来演示在 jQueryUI 的自动完成小部件中使用 label 选项

立即测试
下一主题jQuery UI 按钮