jQuery分类自动完成赋予ui.item未定义

时间:2013-02-20 18:48:47

标签: jquery jquery-autocomplete

我希望在我的Rails 3.2应用程序中使用jQuery 1.9.1编写分类自动完成搜索。我有以下代码:

jQuery.widget( "custom.catcomplete", jQuery.ui.autocomplete, {
        _renderItemData: function( ul, item ) {
            return jQuery( "<li></li>" )
                .data( "item.autocomplete", item )
                .append( "<a>" + item.label + "</a>" )
                    .appendTo( ul );
        },

        _renderMenu: function( ul, items ) {
            var that = this,
            currentCategory = "";
            jQuery.each( items, function( index, item ) {
                if (item.category != currentCategory) {
                    if (item.category != undefined) {
                        ul.append( "<li>" + item.category + "</li>" );
                        currentCategory = item.category;
          }
                }
                that._renderItemData( ul, item );
            });
        },


    });



  jQuery('.search-query').catcomplete({
    appendTo: '#search_query_wrapper',
    source: '/some_url',
        select: function( event, ul ) {
            console.log(ul);
            jQuery.get(ul.item.value);
    }
    });

它实际上正确地呈现了它的项目,但当我点击它们中的任何一个时,我在Firebug中收到以下错误:

TypeError: ul.item is undefined 

jQuery.get(ul.item.value)

怎么了?感谢

1 个答案:

答案 0 :(得分:0)

您提供的代码有效!只需使用jQuery UI 1.9.2脚本即可。

样本: http://jsfiddle.net/yTMwu/53/

如果您还有其他需要,请告诉我们!