views:

98

answers:

1

Hello.

I'm having difficulty setting up JQuery Autocomplete with Rails3. I don't get any errors, it just behaves like regular text box.

Here is what I have done:

First I installed autocomplete as explained here: http://github.com/crowdint/rails3-jquery-autocomplete#readme

I have a model class which contains the model which will be in the lookup:

class NdbFoodDesController < ApplicationController
  autocomplete :ndb_no, :long_desc

  ... some other functions
end

Then I added the function in the routes file:

resources :ndb_food_des do
    get :autocomplete_ndb_no_long_desc, :on => :collection
  end

Then in the view form I have added these lines:

<% f.fields_for :ingredients_recipes do |rif| %>
  <% javascript_include_tag "autocomplete-rails.js" %>  
  <td>
    <input type="text" autocomplete="/ndb_food_des/autocomplete_ndb_no_long_desc" id_element="#ndb_no">
  </td>
  <td>
    <%= rif.autocomplete_field :long_desc, autocomplete_ndb_no_long_desc_ndb_food_des_path %>
  </td>
<% end %>

Is there something I'm doing wrong?

A: 
  1. Javascript include tags must be loaded in the html hader (in your layout file)
  2. autocomplete_tag doesnt work, use text_field instead

Don't forget that you also need jquery installed since they are not included in rails, see http://asciicasts.com/episodes/205-unobtrusive-javascript for reference and an alternative search method.

If it still doesn't work check the output of the server-console, usually it tells you what doesn't fit.

nother rails geek