Hun*_*Luu 5 css ruby ruby-on-rails ruby-on-rails-3.2
我有这个 Railscast http://railscasts.com/episodes/196-nested-model-form-revised?view=asciicast风格的嵌套模型表单
我需要给每个标签一个唯一的 ID。目前,生成的每个字段都有一个唯一的 ID 和名称,该名称由一个助手方法给出,该方法为每个关联记录分配一个唯一的 ID。所以这是照顾。但是,此表单具有未分配 ID 的“fieldset”标记。我需要每个字段集的唯一 ID 用于 jQuery 操作。
具体来说,我如何为“活动”记录生成的每个字段集提供唯一的 CSS 标签 ID?下面发布的是我的表单是如何创建的。谢谢
_form.html.erb
<%= form_for(@trip) do |f| %>
<%= f.fields_for :days do |builder| %>
<%= render 'day_fields', f: builder %>
<% end %>
<%= link_to_add_fields "Add Day", f, :days %>
Run Code Online (Sandbox Code Playgroud)
_day_fields.html.erb 部分
<fieldset>
<%= f.label :summary, "Day Summary" %><br />
<%= f.text_area :summary, :rows => 1 %><br />
<%= link_to "remove", '#', class: "remove_fields" %>
<%= f.fields_for :activities do |builder| %>
<%= render 'activity_fields', f: builder %>
<% end %>
<%= link_to_add_fields "Add Activity", f, :activities %>
</fieldset>
Run Code Online (Sandbox Code Playgroud)
_activity_fields.html.erb
<fieldset>
<%= f.label :title, "Activity" %><br />
<%= f.text_field :title, :rows => 1 %><br />
<%= f.hidden_field :_destroy %>
<%= link_to "remove", '#', class: "remove_fields" %>
</fieldset>
Run Code Online (Sandbox Code Playgroud)
如果您使用 ryanb Nested_form gem :
f.index代替使用。并确保您在部分中传递了每个不同的 form_builder 。
例如,如果你这样做
<%= main_form.fields_for :nested1_items do |nested1_form| %>
<%= render partial 'main/nested1_fields', nested1_form: nested1_form %>
<% end %>
Run Code Online (Sandbox Code Playgroud)
_nested1_fields
<fieldset id="nested1-<%= nested1_form.index %>-items">
Run Code Online (Sandbox Code Playgroud)
请参阅我在这个问题中的回答。
| 归档时间: |
|
| 查看次数: |
2981 次 |
| 最近记录: |