Displaying content using AJAX

All, I am trying to implement some ajax functionality on my web site. I have a list of links and each link have many items associated with it. For example, "My Netflix queue" link is connected to 10 movies (items). Now, I am trying to display a table with these items when the user clicks on the link. I have other links and corresponding items on my page. I want to do all this using Ajax. But have not been able to implement this so far. The code that I have used is given below:

//link.html.erb (:link passes the link_is to the rjs which gets all //the items for that link)

<% for link in @links %> <div class="link">         <div class="link">                 <%= link_to_remote link.name, :url => { :action => 'show_items', :link => link.id} %>         </div> </div> <% end %>

//this is where I want to display the items

<% if params[:link] %> <div id="items"> <table> <% for item in @item %>         <td>                 <img src="<%=item.image_url%>" /><br />                 <%= item.name %>         </td> <% end %> </table> </div> <% end %>

//RJS Template (show_items.js.rjs) //@items has all the items for that link. I have verified using the //debug statement. Now I need to pass the @items variable to the view //so that the items are displayed. But thats where I am erring.

link = params[:link] @items = Item.find_all_by_link_id(params[:link]) logger.debug "Items : " + @items.inspect page.replace_html :items, @items, :object => @items

//controller.rb   def link     @links = Link.find(:all)   end Any help will be greatly appreciated. Thanks, vishy

//this is where I want to display the items

<% if params[:link] %>

This doesn't look right. The placeholder div with id items should
always be there (or else your rjs will have nothing to insert into).

<div id="items"> <table> <% for item in @item %>        <td>                <img src="<%=item.image_url%>" /><br />                <%= item.name %>        </td> <% end %> </table> </div> <% end %>

//RJS Template (show_items.js.rjs) //@items has all the items for that link. I have verified using the //debug statement. Now I need to pass the @items variable to the view //so that the items are displayed. But thats where I am erring.

link = params[:link] @items = Item.find_all_by_link_id(params[:link]) logger.debug "Items : " + @items.inspect page.replace_html :items, @items, :object => @items

You should be naming a partial here to render.

Fred