Как вставлять шрифт-awesome icons в submit_tag
Попытка пользовательского шрифта удивительные значки для моих кнопок, но я не могу его показать в submit_tag
<%= submit_tag icon("search"), class: "btn-primary", style:"width:40px;" %>
выход:
<input class="btn-primary" name="commit" style="width:40px;" type="submit" value="<i class='icon-search' style='font-size:1em' ></i>">
хелперов:
def icon(name, size=1)
#icon("camera-retro")
#<i class="icon-camera-retro"></i>
html = "<i class='icon-#{name}' "
html += "style='font-size:#{size}em' "
html += "></i>"
html.html_safe
end
когда я удаляю строку html.html_safe помощника, я получаю то же самое. его как html_safe не работает. Я также пробовал html = raw (html) без эффекта.
Ответы
Ответ 1
Входные теги отправки не допускают вложенный HTML-код, который вам нужно отображать.
Попробуйте использовать кнопку вместо:
<button class='btn btn-primary' style='width:40px;'>
<%= icon("search") %>
</button>
Стоит отметить некоторые различия между поведением тегов кнопок и тегами отправки тегов. Проверьте этот вопрос SO для кучи замечательных подробностей. У меня лично не было проблем с использованием тегов кнопок в моих приложениях. YMMV в отношении разных браузеров и т.д.
Ответ 2
<%= link_to(status, :method=>:delete) do %>
<i class='icon-trash icon-large'></i>
<% end %>
Ответ 3
Вы можете добавлять значки в свой HTML-код, например:
<i class="icon-search"></i>
Однако, если вы хотите разместить значки в Rails link_to helper, используйте вспомогательный метод ilink_to. Выполните следующие шаги:
1) Добавьте драгоценный камень в свою группу активов в Gemfile: gem 'less-rails-fontawesome'
2) Запустите установку пакета:
3) Убедитесь, что @import "fontawesome"; раскомментирован в app/assets/stylesheetes/bootstrap_and_overrides.css.less.
4) Используйте метод * ilink_to * helper вместо метода * link_to * helper.
<%= ilink_to "upload-alt", "Edit", edit_post_path(post), class: 'btn btn-mini' %>
Обс: Предварите текст ссылки с именем значка, снятым с префикса значка
Эти инструкции приведены здесь: https://github.com/wbzyl/less-rails-fontawesome
Ответ 4
Я думаю, вам нужно избавиться от html_safe
от помощника и использовать raw icon("search")
вместо просто icon("search")
и, как говорит BaronVonBraun, используйте button
вместо input[submit]