Я знаю, что этот ответ придет через несколько месяцев после того, как он вам понадобится, но, надеюсь, это поможет кому-то еще, кто наткнется на этот вопрос. Вот как вы можете динамически добавлять поле выбора незаметно для вашего примера.
_form_new.html.erb
<%= simple_form_for @rfq do |f| %>
<a id="add-selection-box" href="#">Add Selection Box</a>
<div id="std"></div>
<script type="text/javascript">
$(document).ready(function(){
$("#add-selection-box").click(function() {
$("#std").append("<%= escape_javascript(render(:partial => 'standards/standards', :collection => @rfq.standards, :locals => { :f => f })) %>");
});
});
</script>
<% end %>
Вот как вы можете сделать это, используя link_to_function
_form_new.html.erb
<%= simple_form_for @rfq do |f| %>
<%= add_selection_box "Add Selection Box", @rfq.standards, f %>
<div id="std"></div>
<% end %>
хелперы / my_form_helper.rb
module MyFormHelper
def add_selection_box(name, collection, form)
page = %{
partial = "#{escape_javascript(render(:partial => "standards/standards", :collection => collection, :locals => { :f => form }))}";
$("#std").append(partial);
}
link_to_function name, page
end
end