Hi, I have a button that displays "Show form." When a user clicks on it, I want the form to be display on the page without having to reload the page. This is what I''ve got so far: controller action #show_add_user respond_to { |format| format.js } In my view template I have: <% hidden_div_if($a, :id => "add_user_form") } do $> <%= render :partial => "form" %> <% end %> and in my show_form.js.rjs: page.replace_html("add_user_form", :partial => "form") This is the _form.html.erb (partial): <% form_for :user, @user, :url => { :action => "create_user" } do |f| %> <tr> <td> Email: <%= f.text_field :email %> </td> </tr> <tr> <td> Password: <%= f.text_field :password %> </td> </tr> <tr> <td> <%= submit_tag "Add user" %> </td> </tr> <% end %> Anyway help is much appreciated, thanks. -- Posted via http://www.ruby-forum.com/. --~--~---------~--~----~------------~-------~--~----~ 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 rubyonrails-talk-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk-unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en -~----------~----~----~----~------~----~------~--~---
Justin To wrote:> I have a button that displays "Show form." When a user clicks on it, I > want the form to be display on the page without having to reload the > page. > > This is what I''ve got so far: > > controller action #show_add_user > > respond_to { |format| format.js }That''s over the top. Put a div with id ''add_user'' into your page, put your form into a partial, and render it like this: def show_add_user render :update do |rjs| rjs.replace_html :add_user, :partial => ''add_user_form'' end end Note that my variable ''rjs'' is usually called ''page''. I never call it that because the world has far, far too many variables called ''page''.> In my view template I have: > > <% hidden_div_if($a, :id => "add_user_form") } do $> > <%= render :partial => "form" %> > <% end %>I hope to eventually find a use for hidden_div_if. But...> and in my show_form.js.rjs: > page.replace_html("add_user_form", :partial => "form")If the div is hidden, not non-existent, why re-render it? Why not just make it visible? And why write a whole js file when you can just put what you actually need into a render :update, in the controller? Now write unit tests for everything you do, using either assert_rjs or assert_javascript to constrain the Ajax. -- 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 rubyonrails-talk-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk-unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en -~----------~----~----~----~------~----~------~--~---
I added all of those goodies, <%= link_to_remote( "+ Add user", :update => "add_user", :url => { :action => :show_add_user }) %> Is my link to invoke the action, but whenever I click it, there doesn''t seem to be any action! Thanks for the help. -- Posted via http://www.ruby-forum.com/. --~--~---------~--~----~------------~-------~--~----~ 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 rubyonrails-talk-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk-unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en -~----------~----~----~----~------~----~------~--~---
Ok, I resolved it, somewhat... but now when i click it, along with my form, it has y { Element.update("add_user", " \n \n \n Email: \n \n \n \n \n \n Password: \n \n \n \n \n \n \n \n \n \n"); } catch (e) { alert(''RJS error:\n\n'' + e.toString()); alert(''Element.update(\"add_user\", \" \\n \\n \\n Email: \\n \\n \\n \\n \\n \\n Password: \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n\");''); throw e } What''s the problem here?? -- Posted via http://www.ruby-forum.com/. --~--~---------~--~----~------------~-------~--~----~ 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 rubyonrails-talk-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk-unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en -~----------~----~----~----~------~----~------~--~---
Ha ha, I figured it out: <%= link_to_remote( "+ Add user", :url => { :action => :show_add_user }) %> I was updating twice. THanks! -- Posted via http://www.ruby-forum.com/. --~--~---------~--~----~------------~-------~--~----~ 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 rubyonrails-talk-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk-unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en -~----------~----~----~----~------~----~------~--~---
How would I run some effects like visual_effect :blind_up for the div ''add_user'' ? Thanks! -- Posted via http://www.ruby-forum.com/. --~--~---------~--~----~------------~-------~--~----~ 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 rubyonrails-talk-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk-unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en -~----------~----~----~----~------~----~------~--~---
Justin To wrote:> How would I run some effects like visual_effect :blind_up > > for the div ''add_user'' ? > > Thanks!The visual effect, and also I''m lost as to make the div disappear now if I click on the ''Add user'' link and the div is currently showing Thanks! -- Posted via http://www.ruby-forum.com/. --~--~---------~--~----~------------~-------~--~----~ 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 rubyonrails-talk-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk-unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en -~----------~----~----~----~------~----~------~--~---
Justin To wrote:> Is my link to invoke the action, but whenever I click it, there doesn''t > seem to be any action!Install Firebug on your Firefox, and view its debugging console while clicking. --~--~---------~--~----~------------~-------~--~----~ 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 rubyonrails-talk-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org To unsubscribe from this group, send email to rubyonrails-talk-unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en -~----------~----~----~----~------~----~------~--~---