Могут ли методы ввода формы ActionView создавать теги <input>с внутренним html? - PullRequest
0 голосов
/ 26 января 2010

Я генерирую ввод, как это:

<%= form.radio_button("ans", ans.num.to_s) %>

Сгенерированный HTML-код:

<input id="myform_ans_1" name="myform[ans]" type="radio" value="1" />

Но то, что я ищу, это HTML:

<input id="myform_ans_1" name="myform[ans]" type="radio" value="1">Some Text</input>

Есть ли опция, которую я могу передать в метод radio_button для отображения желаемого HTML?

Как я понимаю, необязательный options hash, который вы можете передать radio_button, добавляет только атрибуты к html-тегу.

Ответы [ 3 ]

3 голосов
/ 26 января 2010

Если в вашем приложении много форм, вам обязательно стоит взглянуть на formtastic . Вы можете определить свои формы следующим образом:

<% semantic_form_for @article do |form| %>

  <% form.inputs :name => "New Article" do %>
    <%= form.input :title %>
    <%= form.input :body %>
  <% end %>

  <% form.buttons do %>
    <%= form.commit_button %>
  <% end %>

<% end %>

Будет сгенерирована вся разметка, необходимая для HTML-форм, включая наборы полей, легенды, входные данные и метки.

1 голос
/ 26 января 2010
<p><%= form.radio_button("ans", ans.num.to_s) %>

<%= form.label("Some Text") %></p>
1 голос
/ 26 января 2010

Вы должны добавить <label> теги с атрибутом for, например:

<input id="myform_ans_1" ... /><label for="myform_ans_1">Foobar</label>

И нет, для этого нет параметров. Вам просто нужно использовать помощник по меткам.

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