2009-08-22 7 views
0

J'essaie de rendre un onclick partiel pour économiser sur le temps de chargement de la page.Rendu Partiel onclick dans Rails

<ul id="pop_twitter"> 
    <% @topic_count.each do |k,v| %> 
    <% @k = k %> 
    <!-- make a link that onclick renders a partial below --> 
    <li><% link_to_remote k, ?????? %></li> 
     <ul id="twitter_<%= k %>" style="display:none;"> 
     <!-- where the partial should load --> 
     </ul> 
    <% end %> 
</ul> 

J'ai besoin de charger les « t_tweets » partielle et il faut aussi de la boucle de .each la variable « k ».

Répondre

2

est ici un début difficile:

link_to_remote("Show", :url => {:action => 'show_tweets', :k => k}) 

EDIT: Je suppose que puisque vous êtes seulement montrant une partie, il serait judicieux de passer également :method => :get, puisque par défaut link_to_remote à: poste.

et dans votre contrôleur

def show_tweets 
    render :update do |page| 
    page.insert_html :bottom, 'pop_twitter', :partial => 't_tweets', :locals => params[:k] 
    page["tweet_#{params[:k]}"].visual_effect :highlight #using scriptaculous 
end 

et votre partielle

<div id="<%= "tweet_#{k}" %>"> 
    <%= tweet.body %> 
</div> 
+0

Ne pas oublier d'ajouter à jour les routes/ressources. Sinon, la demande peut ne jamais parvenir au contrôleur. – EmFi

Questions connexes