2012-08-26 26 views
115

que tienen este código:Rieles: Abrir enlace en una nueva pestaña (con 'link_to')

<%= link_to image_tag("facebook.png", :class => "facebook_icon", :alt => "Facebook", :target => "_blank"),     
      "http://www.facebook.com/mypage" %> 

Cómo puedo hacer que se abra en una nueva pestaña cuando un usuario hace clic en el enlace?

Respuesta

214

El parámetro target: :_blank debe ser un parámetro de link_to, mientras que lo pone en los parámetros image_tag. Modificar el código de la siguiente manera:

<%= link_to image_tag("facebook.png", class: :facebook_icon, alt: "Facebook"), "http://www.facebook.com/mypage", target: :_blank %> 

O con un bloque:

<%= link_to "http://www.facebook.com/mypage", target: :_blank do %> 
    <%= image_tag("facebook.png", class: :facebook_icon, alt: "Facebook") %>  
<% end %> 
13

Prueba esto:

<%= link_to image_tag("facebook.png", :class => "facebook_icon", :alt => "Facebook"), "http://www.facebook.com/mypage", :target => "_blank" %> 
3

Si usted está buscando la manera de abrir un enlace en una nueva pestaña dentro de html (para cualquiera que haya venido aquí de Google), aquí:

<a href="http://www.facebook.com/mypage" target="_blank">Link name</a> 
+8

No voy a downvote usted, pero esta página es específicamente sobre link_to de Ruby (de título). –

+0

@HerbMeehan No estoy seguro de si votar de nuevo, pero es útil para explicar lo que significa el 'objetivo:: _blank'. –

4

También se puede utilizar en lugar de target: :_blanktarget: '_blank'

<%= link_to image_tag("facebook.png", class: "facebook_icon", alt: "Facebook"), "http://www.facebook.com/mypage", target: :_blank %> 

link_to do

<%= link_to "http://www.facebook.com/mypage", target: :_blank do %> 
    <%= image_tag "facebook.png", class: "facebook_icon", alt: "Facebook" %> 
<% end %> 
Cuestiones relacionadas