Вложите HTML <span>внутрь рельсов в виде метки для метки? - PullRequest
3 голосов
/ 01 декабря 2010

Я хочу вложить элемент в тег label_for. Я хочу сделать это, чтобы нацелить определенную часть метки с помощью правил CSS, в этом случае сделать текст красным. Из некоторого краткого прочтения, это действительно правильный HTML, и он подходит к моему дизайну, хотя идея не очень удачная для Rails.

Требуемый вывод html выглядит так:
<label for="zip">ZIP Code -<span class="required">Required</span></label>

Мой текущий код выглядит так:
<%= form.label :zip, 'ZIP Code -<span class="required">Required</span>' %>

Проблема в том, что Rails каким-то образом экранирует внутренний тег span, так что он отображается в виде текста на странице вместо HTML. Я вижу это на странице:
ZIP Code -<span class="required">Required</span>

1 Ответ

7 голосов
/ 01 декабря 2010

Rails3 автоматически экранирует строки.Вам нужно вызвать #html_safe для строки, которую вы помещаете в метку.Подробнее см. http://yehudakatz.com/2010/02/01/safebuffers-and-rails-3-0/.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...