form_remote_tag running only once

I'm trying to add a simple search to an index page of my project. It
takes a term, does a 'like' query and populates a common partial which
is displayed with javascript in the div 'search_remote'.

It runs fine, once. If you run multiple queries without hiding the
div, it works fine. If you close the div and attempt to search again
you get nothing. The console shows that the controller method is
firing but the div isn't getting updated.

In the view:
  <% form_remote_tag :update=> "search_remote",:url => { :action =>
"search_remote" } do %>
    <%= 'Search for Description:' %>
    <%= text_field "description", "description" %>
    <%= submit_tag 'find' %>
  <% end %>
  <div id="search_remote">
  </div>

In the controller:
  def search_remote
    if params[:description]
      search_term = params[:description][:description]
      search_term = '%' + search_term + '%'
      @search_results = Item.find(:all, :conditions => ["description
LIKE ?", search_term])
      render :partial => "search_remote", :locals => {:aGroup =>
@search_results, :show_hide => 1, :aToken=> 'search_remote'}

In the partial _search_remote:

<%= link_to_remote 'hide',
  :update => 'search_remote',
  :url => {:action => "search_remote", :token => 'search_remote' },
  :complete => visual_effect( :blind_up, 'search_remote', :duration =>
0.2 )
%>

Thanks

I'm trying to add a simple search to an index page of my project. It
takes a term, does a 'like' query and populates a common partial which
is displayed with javascript in the div 'search_remote'.

It runs fine, once. If you run multiple queries without hiding the
div, it works fine. If you close the div and attempt to search again
you get nothing. The console shows that the controller method is
firing but the div isn't getting updated.

Doesn't look like you ever show the div after hiding it.

Fred

Thanks Fred.

You pointed me in the right direction.

The problem seemed to be in the form_remote_tag element. I changed
"text_field" to "text_field_tag" which got rid of the double params
for description.

I also changed the div name by adding "_div" to it on the possibility
that having the same method and div name might have caused the
confusion.

Then adding a "render :nothing => true" to the search_remote method
cleaned out the div.

In the future, I think I'll add a separate search page.