这是我的代码,有什么不对吗?它似乎没有在焦点上显示列表,我仍然需要在显示列表之前按一个键
<link media="all" type="text/css" href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.6/themes/smoothness/jquery-ui.css" rel="stylesheet"/>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.3/jquery.min.js"></script>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.6/jquery-ui.min.js"></script>
<script type="text/javascript">
$(function() {
$('#id').autocomplete({
source: ["ActionScript",
"AppleScript",
"Asp",
"BASIC",
"C",
"C++",
"Clojure",
"COBOL",
"ColdFusion",
"Erlang",
"Fortran",
"Groovy",
"Haskell",
"Java",
"JavaScript",
"Lisp",
"Perl",
"PHP",
"Python",
"Ruby",
"Scala",
"Scheme"
],
minLength: 0
});
}).focus(function(){
$(this).trigger('keydown.autocomplete');
});
</script>
<input type="text" id="id">
Run Code Online (Sandbox Code Playgroud) 我正在使用JQuery UI自动完成.我指定最小长度.如果我指定minLength:2我需要在服务触发前键入2个字符.如果我指定minLength:1那么我只需要在源服务触发之前键入一个字符.
但是,当我指定时,minLength:0我仍然需要输入一个字符.那么重点是0什么?它有什么不同1?预期的和期望的行为将在输入具有焦点时立即触发......?
想法?
更新:在大多数情况下,karim的解决方案可以正常工作,但是当点击输入时会出现选项,当单击一个时,源会重新提交空字符串而不是刚刚选中的新选项,因此自动完成选项选择一个选项后,如果该框已空,则相同.