Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/390.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript JQuery自动完成-选择第一项_Javascript_Jquery_Ruby On Rails 3_Jquery Ui_Autocomplete - Fatal编程技术网

Javascript JQuery自动完成-选择第一项

Javascript JQuery自动完成-选择第一项,javascript,jquery,ruby-on-rails-3,jquery-ui,autocomplete,Javascript,Jquery,Ruby On Rails 3,Jquery Ui,Autocomplete,我使用的是从ruby on rails应用程序中填充的jquery autocomplete,我正在创建一个自定义的autcomplete,如下所示: $.widget( "custom.code_complete", $.ui.autocomplete, { _renderMenu: function( ul, items ) { var self = this, currentCategory = ""; $

我使用的是从ruby on rails应用程序中填充的jquery autocomplete,我正在创建一个自定义的autcomplete,如下所示:

  $.widget( "custom.code_complete", $.ui.autocomplete, {
    _renderMenu: function( ul, items ) {
            var self = this,
                currentCategory = "";
        $ul = ul;
            $.each( items, function( index, item ) {
                if ( item.category != currentCategory ) {
                    ul.append( "<li class='ui-autocomplete-category'>" + item.category + "</li>" );
                    currentCategory = item.category;
                }
                self._renderItem( ul, item );
            });
        }
    });

  $("#r-code").code_complete({
    source: "URL",
    minLength: 2,
    select: function(event, ui) {
      $(".button-row").fadeIn();
      get_details(ui.item.url);
    }
  });
这将完美地执行搜索并显示结果的下拉列表。我试图让脚本,然后选择列表中的第一个结果。我已尝试通过选择器执行此操作:

$(".ui-menu-item:first a").click();
这会在“自动完成”列表中找到正确的元素,但当我尝试模拟单击时,会出现以下错误:

TypeError: ui.item is null
是否可以通过编程方式单击自动完成结果列表中的第一项

干杯

Eef使用自动对焦:真

 $( el ).autocomplete({
      autoFocus: true
      ...
 });

如果只需将“自动对焦”选项设置为true,则实际上不需要此扩展。
 $( el ).autocomplete({
      autoFocus: true
      ...
 });
$( el ).autocomplete({
  autoFocus: true
});