Все, что вам нужно сделать, это связать селекторы с прослушивателем событий, который запускает запрос ajax, заполняя другие 2 партиала, содержащие последующие селекты.т.е.
<%= form_for @thing, :remote => true do, :update => 'second_form' |f| %>
<%= hidden_field_tag 'form_partial', :value => 'form_2' %>
<%= select_tag :some_param, [[a,a],[b,b],[c,c]] :class => 'submittable' %>
<%= f.label :checked %>
<%= thing.name %>
<% end %>
<div id='second_form'>
</div>
<div id='third_form'>
</div>
class ThingController < ApplicationController
def update
checkboxes = some_logic_to_select_checkboxes from params[:some_params]
render :partial => params[:form_partial], :locals => {:select_menu => select_menu}
end
end
$('.submittable').live('change', function() {
$(this).parents('form:first').submit();
return false;
});
Ваша частичная форма должна содержать ваши формы, заполненные любыми выбранными вариантами, которые вы хотите включить.Мысль была излишней, чтобы просто повторить форму.