Displaying content using AJAX

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
For example, “My Netflix queue” link is connected to 10 movies
(items). Now, I am trying to display a table with these items when
user clicks on the link. I have other links and corresponding items
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 %>

<%= link_to_remote link.name, :url => { :action => 'show_items', :link => link.id} %>
<% end %>

//this is where I want to display the items

<% if params[:link] %>

<% for item in @item %> <% end %>

<%= item.name %>
<% 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

def link
@links = Link.find(:all)
Any help will be greatly appreciated.

On 8 Mar 2009, at 15:04, vishy wrote:

//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).

<% end %>

You should be naming a partial here to render.


This forum is not affiliated to the Ruby language, Ruby on Rails framework, nor any Ruby applications discussed here.

| Privacy Policy | Terms of Service | Remote Ruby Jobs