你好我正在使用这个GEM“nested_form”,它实际上就像魅力一样。
我只需要覆盖在表单中插入新子表单的默认行为。这在文档中可以解释。它说:
Enhanced jQuery JavaScript template
You can override default behavior of inserting new subforms into your form. For example:
window.nestedFormEvents.insertFields = function(content, assoc, link) {
return $(link).closest('form').find(assoc + '_fields').append($(content));
}
我尝试将其包装到脚本标记中,并将其插入到我需要它的视图的顶部。但它根本不起作用。我无法覆盖默认行为。
编辑:这是视图中使用的代码。
<%= f.fields_for :citizens do |citizen_form| %>
<div>
<%= citizen_form.label :citizen, t('generales.citizen') %>
<%= citizen_form.select :country_id , Country.all.collect {|p| [ t("generales."+p.iso), p.id ] }, { :include_blank => true } , { :class => 'pca33' } %>
<div id="delerr"><%= citizen_form.link_to_remove t('generales.delete') %></div>
</div>
<% end %>
此外,我寻找嵌套的JavaScript,但我认为这个文件是自动生成的,因为我无法找到它,但是在标题中有
<script src="/assets/jquery_nested_form.js?body=1" type="text/javascript"></script>
查看vendor / assets / javascript(不存在) 看着公共/资产/ javascript(不存在) 看着app / assets / javascript(不存在)
那么它在哪里?我必须在那里改变一些东西吗?或者文档在谈论什么?