是否有可能禁用自动完成中的列表元素,所以它不可选(灰色)?如何在jQuery自动完成列表中禁用元素
我有这样的代码,从jQuery UI示例页面采取:
HTML:
<input id="tags" />
的jQuery:
$(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
});
});
举个例子 - 这可能要禁用最后一个元素,如果列表中有超过3个项目?
在我的真实代码中,我有一个AJAX请求,但我不想在自动填充框中显示超过20个结果,所以如果不止这个,它应该显示“请缩小搜索范围”并禁用最后一个元素,所以它是不可选的(但只有最后一个元素应该被禁用)。
上面的代码是在这里用小提琴演示,http://jsfiddle.net/m6zvf/
这几乎工作完美,除了用键盘向下滚动元素时,可以选择禁用的元素(这是不可能用鼠标)。如何避免用键盘选择它? – DHS
@JohnMalli看到更新,我用键盘解决了这个问题,我也不知道你是否注意到了,但有一种方法可以让选项滚动,不知道这是你想要的而不是限制数量选项显示http://jqueryui.com/autocomplete/#maxheight –
任何建议如何处理_no列表中的_no可选项?所以显示的唯一项目是UI状态禁用的项目之一。 1.12中的JQuery UI引发了一个主要的缺陷。在1.9中,它只会阻止你选择新的东西 – rythos42