jQuery UI 的自动完成(Autocomplete)是一个强大的小部件,它允许用户在输入框中输入时显示一个下拉建议列表。默认情况下,当输入框获得焦点时不会自动显示建议列表,但有时我们需要实现这个功能。
要在焦点事件上显示自动完成列表,可以使用以下几种方法:
search
方法$( "#tags" ).autocomplete({
source: availableTags
}).focus(function() {
$(this).autocomplete("search", "");
});
minLength
设置为0$( "#tags" ).autocomplete({
source: availableTags,
minLength: 0
}).focus(function() {
$(this).autocomplete("search", "");
});
$( "#tags" ).autocomplete({
source: function(request, response) {
// 自定义数据源逻辑
response(availableTags);
},
minLength: 0
}).focus(function() {
$(this).autocomplete("search", $(this).val());
});
minLength
: 触发搜索前需要输入的最小字符数,设置为0表示不需要输入任何字符即可显示建议source
: 数据源,可以是数组、URL或回调函数search
: 触发搜索的方法,空字符串""表示显示所有建议<!DOCTYPE html>
<html>
<head>
<link rel="stylesheet" href="//code.jquery.com/ui/1.12.1/themes/base/jquery-ui.css">
<script src="https://code.jquery.com/jquery-1.12.4.js"></script>
<script src="https://code.jquery.com/ui/1.12.1/jquery-ui.js"></script>
<script>
$( function() {
var availableTags = [
"ActionScript",
"AppleScript",
"Asp",
"BASIC",
"C",
"C++",
"Clojure",
"COBOL",
"ColdFusion",
"Erlang",
"Fortran",
"Groovy",
"Haskell",
"Java",
"JavaScript",
"Lisp",
"Perl",
"PHP",
"Python",
"Ruby",
"Scala",
"Scheme"
];
$( "#tags" ).autocomplete({
source: availableTags,
minLength: 0
}).focus(function() {
$(this).autocomplete("search", "");
});
} );
</script>
</head>
<body>
<div class="ui-widget">
<label for="tags">编程语言: </label>
<input id="tags">
</div>
</body>
</html>
这个实现会在输入框获得焦点时立即显示所有可用的建议选项。
没有搜到相关的沙龙