признак link_to изображения. как добавить класс к признаку

Я использую link_to img признак как следующее

<%= link_to image_tag("Search.png", :border=>0, :class => 'dock-item'), 
:action => 'search', :controller => 'pages'%><span>Search</span></a>

Который приводит к следующему HTML

<a href="/pages/search"><img alt="Search" border="0" class="dock-item" 
src="/images/Search.png?1264132800" /></a><span>Search</span></a> 

Я хочу, чтобы класс = «пункт дока» пошел в <a> признак вместо признака img.

Как я могу изменить это?

Обновление:

<%= link_to image_tag("Search.png", :border=>0), :action => 'search', 
:controller => 'pages', :class => 'dock-item' %>

результаты в

<a href="/pages/search?class=dock-item"><img alt="Search" border="0" 
src="/images/Search.png?1264132800" /></a> 
89
задан Omnipresent 22 January 2010 в 05:31
поделиться

3 ответа

Привет, вы можете попробовать сделать это

link_to image_tag("Search.png", border: 0), {action: 'search', controller: 'pages'}, {class: 'dock-item'}

или даже

link_to image_tag("Search.png", border: 0), {action: 'search', controller: 'pages'}, class: 'dock-item'

Обратите внимание, что положение фигурных скобок очень важно, потому что если вы их пропустите, рельсы предполагают, что они образуют один Параметры хешей (Подробнее об этом здесь )

и в соответствии с API для Link_to :

link_to(name, options = {}, html_options = nil)
  1. Первый параметр - это строка, которую нужно отобразить (или это может быть Image_Tag, а также)
  2. Вторым является параметр для URL-адреса ссылки
  3. Последний элемент является необязательным параметром для объявления тега HTML, например, Класс, Onchange и т. Д.

Надеюсь, это поможет! =)

135
ответ дан 24 November 2019 в 07:15
поделиться

Легко:

<%= link_to image_tag("Search.png", :border=>0), :action => 'search', :controller => 'pages', :class => 'dock-item' %>

Первый Paral из Link_to - это текст / HTML для связи (внутри метка ). Следующий набор параметров - это свойства URL и атрибуты ссылки.

6
ответ дан 24 November 2019 в 07:15
поделиться

Чтобы ответить на ваш обновленный вопрос, согласно http://api.rubyonrails.org/Classes/actionview/helpers/urlhelper.html ...

Будьте осторожны при использовании более старого стиля аргумента, поскольку требуется дополнительное литеральное хеш:

  link_to "Articles", { :controller => "articles" }, :id => "news", :class => "article"
  # => <a href="/articles" class="article" id="news">Articles</a>

Оставление хэш, дает неправильную ссылку:

  link_to "WRONG!", :controller => "articles", :id => "news", :class => "article"
  # => <a href="/articles/index/news?class=article">WRONG!</a>
2
ответ дан 24 November 2019 в 07:15
поделиться
Другие вопросы по тегам:

Похожие вопросы: