我的输入具有自动完成功能:
.autocomplete({
source: "jsonR.php",
minLength: 2,
select: function( event, ui ) {
$(this).val(ui.item.value);
llamar('/includes/router.php?nomenu=1&que=view_item&id='+ui.item.id,'router');
return false;
},
autoFocus: true
,open: function() {
$('.ui-autocomplete').addClass('searchBox');
}
})
基本上我希望该功能选择第一个项目,这样如果用户点击输入它会搜索第一个 但这不会悬停/聚焦第一个建议的项目,
知道为什么吗?
ps: 其余的工作正常,面团
最佳答案
Scott Gonzalez 为此编写了一个 selectfirst 插件。
更好的是,这里是插件的源代码:)
/*
* jQuery UI Autocomplete Select First Extension
*
* Copyright 2010, Scott González (http://scottgonzalez.com)
* Dual licensed under the MIT or GPL Version 2 licenses.
*
* http://github.com/scottgonzalez/jquery-ui-extensions
*/
(function( $ ) {
$( ".ui-autocomplete-input" ).live( "autocompleteopen", function() {
var autocomplete = $( this ).data( "autocomplete" ),
menu = autocomplete.menu;
if ( !autocomplete.options.selectFirst ) {
return;
}
menu.activate( $.Event({ type: "mouseenter" }), menu.element.children().first() );
});
}( jQuery ));
注意:要使用它,只需将此行添加到您的自动完成中:
selectFirst: true, // auto selects first element
关于javascript - JqueryUI 自动完成 : autoFocus = true won't do anything,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9095856/