Ответ 1
Я думаю, что это так
<%= link_to image_tag('img.png'), 'http://www.website.com', target: '_blank' %>
См. http://api.rubyonrails.org/classes/ActionView/Helpers/UrlHelper.html#method-i-link_to
В HTML, если бы я хотел, чтобы ссылка открывалась в новом окне, я бы принял target = "_ blank" следующим образом:
<a href="#" onclick="location.href='http://www.website.com/'; return false;" target="_blank"><img src="/img.png" /></a>
Как добавить "_ blank" в рельсы? Здесь код, который я до сих пор ссылался на ссылку (но в настоящее время открывается в той же вкладке/окне):
<%= link_to image_tag("img.png"), 'http://www.website.com/' %>
Я думаю, что это так
<%= link_to image_tag('img.png'), 'http://www.website.com', target: '_blank' %>
См. http://api.rubyonrails.org/classes/ActionView/Helpers/UrlHelper.html#method-i-link_to
вы можете удалить действие по умолчанию ссылки в js как
$('#button-id').click(function(e){
e.preventDefault();
});
Функция preventDefault() предотвращает действие события по умолчанию
Для кого-то интересно, как этого добиться при передаче блока:
<%= link_to(product.link, target: '_blank') do %>
вы также можете сделать target: :_blank
, если вы предпочитаете использовать символ