无法使用Ruby on Rails 4代码复制HTML代码

时间:2015-05-25 19:38:35

标签: html ruby-on-rails

我正在尝试复制此HTML代码

<input type="checkbox" value="" id="2" name="check" />
<label style="left: 0px;"for="2"><span>Name</span>

使用这个Ruby On Rails 4代码

<%= check_box_tag 'reason_ids[]', reason.id, false ,:required => true%>
<label style="left: 0px;"for="2"><span>Name</span>

到目前为止,我获得了与HTML相同的视觉外观,但功能却不尽相同。

我的目标: 点击标签也检查复选框。

此时我无法选中复选框,也无需单击复选框或标签。我试图改变Rails代码的顺序,但没有成功。

我做错了什么? 感谢。

1 个答案:

答案 0 :(得分:1)

实现目标:

  

点击标签也检查复选框

你需要&#34;连接&#34; id-for的输入标签对(input-id和label-for应具有相同的值):

<%= check_box_tag 'reason_ids[]', reason.id, false, :required => true, :id => reason.id %>
<label style="left: 0px;" for="2"><span>Name</span>

注意::id => reason.id添加到check_box_tag

或者(不同的技术),您可以将check_box包装在标签下(无需关联id-for):

<%= label_tag do %>
  <span>Name</span>
  <%= check_box_tag 'reason_ids[]', reason.id, false, :required => true %>
<% end %>