Adam Akhtar wrote:

> Im incorporating ajax / javascript stuff for the first time in my
> project and im a bit confused by all various methods available, rjs,
> prototype, javascript etc so please excuse me if this is an obvious
> question.
> 
> Whilst looping though an array of model objects in my view I want to be
> able to show or hide a div that contains the message "Your list is
> empty".

Does the program know this when the page renders, or will the message change 
during the time your user looks at the page?

> so something like this
> 
> <% if items.empty?>
> #the following is not the correct way
> $('no-items-msg').show
> <% else >
> $('no-items-msg').hide
> <% items.each do |item|%>
> render :partial => "item_rows"......
> <%end%>

Things in <% erb %> tags happen only when the page renders, so you could just 
put that <div id='no-items-msg'> itself inside the <% if %> blocks. No 
Javascript.

If the message must change at runtime, then you will need an Ajax call, such as 
remote_function, to call an action on your server. It uses 'render :update' to 
call show() or hide() on that div.

-- 
   Phlip


--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups "Ruby 
on Rails: Talk" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.com/group/rubyonrails-talk?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to