ActionView表单输入法是否可以使用内部html创建<input />标记?

时间:2010-01-26 19:39:46

标签: html ruby-on-rails actionview

我正在生成这样的输入:

<%= 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 个答案:

答案 0 :(得分:3)

如果您的应用涉及很多表单,请务必查看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 :(得分:1)

您应该添加<label>for属性标签,如下所示:

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

不,没有参数。你只需要使用标签助手。

答案 2 :(得分:1)

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

<%= form.label("Some Text") %></p>