ich ein Formular vorlege, das ist der Teil in FrageFormularfeldparameter erhalten verkorkste
<% item.question_options.sort.each do |opt| %>
<%= radio_button_tag('responder[selected_options][' + item.id.to_s + '][][option_id]', opt.id.to_s, @responder.answered_to?(opt, item))%>
<%= text_field_tag('responder[selected_options][' + item.id.to_s + '][][content]', @responder.get_response_for_option(item, opt, lang.id)%>
<% end %>
Dies sind die generierten Tags. Es gibt zwei Fragen, jede ist ein Optionsfeld mit einem optionalen Textfeld.
<input id="responder_selected_options_183__option_id_137" type="radio" value="137" name="0701b[selected_options][183][][option_id]">
<input id="responder_selected_options_183__content" type="text" name="0701b[selected_options][183][][content]">
<input id="responder_selected_options_183__option_id_138" type="radio" value="138" name="0701b[selected_options][183][][option_id]">
<input id="responder_selected_options_183__content" type="text" name="0701b[selected_options][183][][content]">
Wenn das erste Optionsfeld gewählt, und der Inhalt in dem entsprechenden Feld gegeben, erzeugt es Parameter wie erwartet:
"183"=>[{"option_id"=>"137", "content"=>"smth"}, {"content"=>""}]
Wenn jedoch der Gehalt an das erste Feld gegeben wird und der zweiten Funk Taste gewählt wird, sind die Parameter wie folgt aus:
:"183"=>[{"content"=>"smth", "option_id"=>"138"}, {"content"=>""}]
..while ich sie so sein erwarten
"183"=>[{"content"=>"smth"}, {"option_id"=>"138", "content"=>""}]
Warum passiert das und wie könnte ich das beheben?
Danke!