我有一个看起来像这样的表格:
<h1>Title: <%= @task.title %></h1>
Dates: <% @dates.map do |date| %>
<%= form_tag("/responses/create/", :method => "post", :id => @task) do %>
<%= date.task_date %> <%= check_box_tag "response_checkbox", date.task_date %>
<%= submit_tag("Add") %>
<% end %>
<% end %>
我想要的是一个复选框列表,用户可以选择一个复选框,然后用一个按钮提交表单。但是表单为每个对象生成一个提交按钮,我无法弄清楚原因!现在为此工作几个小时......
这是html输出:
<h1>Title: Weihnachtsball</h1>
Dates:
<form id="#<Task:0x000001067a6320>" method="post" action="/responses/create/" accept-charset="UTF-8">
<div style="display:none">
<input type="hidden" value="✓" name="utf8">
<input type="hidden" value="OaDIn2B0yHVBAY9z7F0IOdiULu5GiqlSJV5+Ft92tbw=" name="authenticity_token">
</div>
2014-11-10 11:11:00 UTC
<input id="response_checkbox" type="checkbox" value="2014-11-10 11:11:00 UTC" name="response_checkbox">
</form>
<form id="#<Task:0x000001067a6320>" method="post" action="/responses/create/" accept-charset="UTF-8">
<div style="display:none">
<input type="hidden" value="✓" name="utf8">
<input type="hidden" value="OaDIn2B0yHVBAY9z7F0IOdiULu5GiqlSJV5+Ft92tbw=" name="authenticity_token">
</div>
2014-11-23 12:14:00 UTC
<input id="response_checkbox" type="checkbox" value="2014-11-23 12:14:00 UTC" name="response_checkbox">
</form>
<input type="submit" value="Add" name="commit">
</div>
</div>
答案 0 :(得分:1)
您需要遍历form_tag
<h1>Title: <%= @task.title %></h1>
<%= form_tag("/responses/create/", :method => "post", :id => @task) do %>
Dates: <% @dates.map do |date| %>
<%= date.task_date %> <%= radio_button_tag "response_checkbox", date.task_date %>
<% end %>
<%= submit_tag("Add") %>
<% end %>
应该没问题。
我认为radio_button_tag
对你来说更好。毕竟,您希望用户选择一个框。