jQuery自动完成类别位置

jQuery自动完成类别位置,jquery,jquery-ui,autocomplete,Jquery,Jquery Ui,Autocomplete,我曾经有过这样的经历: $( "#glavnotursene" ).autocomplete({ delay: 0, source: 'extrastuff.php?glavnotursene', select: function( event, ui ) { window.location = 'maps.php?id. ' + ui.item.nomer; } }); 而且它工作得很好。当项目弹出并单击它们时,我将被重定向到maps.php

我曾经有过这样的经历:

$( "#glavnotursene" ).autocomplete({
    delay: 0,
    source: 'extrastuff.php?glavnotursene',
    select: function( event, ui ) {
        window.location = 'maps.php?id. ' + ui.item.nomer;
    }
});
而且它工作得很好。当项目弹出并单击它们时,我将被重定向到maps.php 我决定也使用类别,所以我这样做:

    $.widget( "custom.catcomplete", $.ui.autocomplete, {
            _renderMenu: function( ul, items ) {
                var self = this,
                    currentCategory = "";
                $.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 );
                });
            }
        });

$( "#glavnotursene" ).catcomplete({
        delay: 0,
        source: 'extrastuff.php?glavnotursene',
        select: function( event, ui ) {
            window.location = 'maps.php?id. ' + ui.item.nomer;
        }
    });
$.widget(“custom.catcomplete”,$.ui.autocomplete{
_renderMenu:功能(ul,项目){
var self=这个,
currentCategory=“”;
$。每个(项目、功能(索引、项目){
如果(item.category!=当前类别){
ul.追加(“
  • ”+item.category+“
  • ”); currentCategory=item.category; } 自我评估(ul,项目); }); } }); $(“#格拉夫诺图森”).catcomplete({ 延迟:0, 来源:“extrastuff.php?glavnotursene”, 选择:功能(事件、用户界面){ window.location='maps.php?id.+ui.item.nomer; } });
    而且select不再工作,所以人们不会被重定向

    我正在使用:

    • jqueryui-v1.10.0

    • jqueryv1.9.1


      • 试着这样做:

        $( "#glavnotursene" ).autocomplete({
           delay: 0,
           source: 'extrastuff.php?glavnotursene',
           select: function( event, ui ) {
               window.location = 'maps.php?id. ' + ui.item.nomer;
           }
        }).data("autocomplete")._renderMenu = function(ul, items) {
          var self = this, currentCategory = "";
          $.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 );
          });
        };
        
        我没有检查这是否有效,但我希望能

        function my_autocomplete(ul, items, self){
          var currentCategory = "";
          $.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 );
          });
        }
        
        $( "#glavnotursene" ).catcomplete({
           delay: 0,
           source: 'extrastuff.php?glavnotursene',
           select: function( event, ui ) {
               window.location = 'maps.php?id. ' + ui.item.nomer;
           }
        }).data("autocomplete")._renderMenu = function(ul, items) {
          my_autocomplete(ul, items, this);
        };