Ruby on rails 在ruby rails中为jquery自动完成呈现json

Ruby on rails 在ruby rails中为jquery自动完成呈现json,ruby-on-rails,json,autocomplete,Ruby On Rails,Json,Autocomplete,这是我以{11:xyz,14:abc}格式呈现json的代码 这是javascript,我在其中使用自动完成结果更新div结果。我想要的是使xyz和abc链接到与之相关联的ID,但我无法弄清楚为什么我会丢失ID—我在结果中得到的所有ID都是xyz和abc` $(document).ready(function(){ $("#search").autocomplete({ //source: $('#search').data('autocomplete-source')

这是我以{11:xyz,14:abc}格式呈现json的代码

这是javascript,我在其中使用自动完成结果更新div结果。我想要的是使xyz和abc链接到与之相关联的ID,但我无法弄清楚为什么我会丢失ID—我在结果中得到的所有ID都是xyz和abc`

$(document).ready(function(){

    $("#search").autocomplete({
        //source: $('#search').data('autocomplete-source'),
        source: "entities#index",

        open: function(e, ui) {
            var list = '';
            var results = $('ul.ui-autocomplete.ui-widget-content a');
            var ent_id = results.html()
            results.each(function() {
                list += '<a href= '+$(this).html()+'/'+ent_id+ '>' +$(this).html()+'</a>'+ '<br />';
            });
            $('#results').html(list);
        }
    })
} )
现在上面的javascript代码不能按要求工作,因为我无法获取ID


谢谢,我找到了解决办法

$(document).ready(function(){

    $( "#search" ).autocomplete(
        {
            source:"entities#index",
            select: function( event, ui ) {
                $( "#search" ).val( ui.item[1] );
                $( "#results").empty();
                $( "#results" ).append( '<a href= '+"entities"+'/'+ui.item[0]+ '>' +ui.item[1]+'</a>' );
                return false;
            }

        }).data( "ui-autocomplete" )._renderItem = function( ul, item ) {
        return $( "<li></li>" )
            .data( "item.autocomplete", item )
            .append( "<a>" + item[1] + "</a>" )
            .appendTo( ul );
    };

} )

这是哪个自动完成jquery插件?有很多
$(document).ready(function(){

    $( "#search" ).autocomplete(
        {
            source:"entities#index",
            select: function( event, ui ) {
                $( "#search" ).val( ui.item[1] );
                $( "#results").empty();
                $( "#results" ).append( '<a href= '+"entities"+'/'+ui.item[0]+ '>' +ui.item[1]+'</a>' );
                return false;
            }

        }).data( "ui-autocomplete" )._renderItem = function( ul, item ) {
        return $( "<li></li>" )
            .data( "item.autocomplete", item )
            .append( "<a>" + item[1] + "</a>" )
            .appendTo( ul );
    };

} )