I have four links on a page generated with link_to . I want to style the currently active link differently than the other 3. I tried passing :class => "selected" to link_to but it adds this tag to all 4 links, not just the currently active one. anyideas? (this is for tabbed navigation) -- 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 -~----------~----~----~----~------~----~------~--~---
i don''t see your code, but generally it works like this: <%= link_to "Link name", { :controller => ''controller_name'', :action => ''action_name'' }, :class => ''someclass'' %> then you style your "someclass" via css. --~--~---------~--~----~------------~-------~--~----~ 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 -~----------~----~----~----~------~----~------~--~---
MaD wrote:> i don''t see your code, but generally it works like this: > <%= link_to "Link name", { :controller => ''controller_name'', :action > => ''action_name'' }, :class => ''someclass'' %> > > then you style your "someclass" via css.Thanks for the reply, but doesnt the above add the class "someclass" to all four links at the same time? I dont want to do taht, i want to add something like "selected" to the currently active link and "unselected" to the other three? If that is so how would you style the currently selected link differently that the other three? -- 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 -~----------~----~----~----~------~----~------~--~---
I think that you''re looking for something like that.... <%= link_to_unless_current(''Add contact'', new_contact_url, :class => ''adduser'') { link_to(''Add contact'', new_contact_url, :class => ''selected'') } %> http://apidock.com/rails/ActionView/Helpers/UrlHelper/link_to_unless_current Adam Akhtar escribió:> MaD wrote: > >> i don''t see your code, but generally it works like this: >> <%= link_to "Link name", { :controller => ''controller_name'', :action >> => ''action_name'' }, :class => ''someclass'' %> >> >> then you style your "someclass" via css. >> > > Thanks for the reply, but doesnt the above add the class "someclass" to > all four links at the same time? I dont want to do taht, i want to add > something like "selected" to the currently active link and "unselected" > to the other three? If that is so how would you style the currently > selected link differently that the other three? > >--~--~---------~--~----~------------~-------~--~----~ 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@googlegroups.com For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en -~----------~----~----~----~------~----~------~--~---
On Feb 9, 10:04 am, Adam Akhtar <rails-mailing-l...-ARtvInVfO7ksV2N9l4h3zg@public.gmane.org> wrote:> I have four links on a page generated with link_to . I want to style the > currently active link differently than the other 3. I tried passing > :class => "selected" to link_to but it adds this tag to all 4 links, not > just the currently active one. > > anyideas? > > (this is for tabbed navigation) > -- > Posted viahttp://www.ruby-forum.com/.Well the problem is that you need to set class="#{''selected'' if SOMETHING}" so the question becomes "what is SOMETHING?". This might get criticised but here is what I am doing in my current app. I have a helper that looks something like def class_for_link(uri) hsh = ActionController::Routing::Routes.recognize_path(uri, { :method => :get }) # You might need to gsub out the root of this url first [hsh[:controller], hsh[:action]] == [controller.controller_name, controller.action_name] ? ''active'' : '''' end Then in the views I can say something like <%= link_to "John", person_path(1), :class => ''style1 style2 '' + class_for_link(person_path(1)) %> --~--~---------~--~----~------------~-------~--~----~ 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@googlegroups.com For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en -~----------~----~----~----~------~----~------~--~---
Thank you both for your responses. Ive gone with Juans as it does what i need is shorter code. The only one problem is that it results in the selected link still being selectABLE ie. it can still be clicked on even though its the current page in view. I can style it so that it looks like it isnt clickable so top banana! if there is a way to fix this minor side issue id love to know. many 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 -~----------~----~----~----~------~----~------~--~---
In this video you''ll see the behaviour you''re looking for... (min 33) http://s3.amazonaws.com/lr_screencasts/learningrails-17.mov Adam Akhtar escribió:> Thank you both for your responses. > > Ive gone with Juans as it does what i need is shorter code. The only one > problem is that it results in the selected link still being selectABLE > ie. it can still be clicked on even though its the current page in view. > I can style it so that it looks like it isnt clickable so top banana! > > if there is a way to fix this minor side issue id love to know. > > many thanks >--~--~---------~--~----~------------~-------~--~----~ 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@googlegroups.com For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en -~----------~----~----~----~------~----~------~--~---