J'utilise deux collection_selectrails collection_select combo dynamique
Vues
<%= collection_select(@table, "gm", @strs, "country", "country", {:prompt => "Select Country"}) %>
<%= submit_tag value="Proceed-->"%>
<%= collection_select(@table, "sp", @pops, "state", "state", {:prompt => "Select State"}) %>
<%= submit_tag value="Submit"%>
Contrôleur
@strs = Table.find_by_sql("SELECT DISTINCT country FROM tables ORDER BY country")
@pops = Table.find(:all, :conditions=>{:country => params[:gm]}, :order=> 'state', :select=> 'DISTINCT state')
Ici, ce sont collection_select relationnelles. Je dois remplir la seconde collection_select une fois que le premier collection_select a été sélectionné. Maintenant, j'utilise la clé de soumission. Mais, une fois que "Proceed" a été traité, params [gm] a été désactivé. Donc je suis incapable de traiter la balise "Soumettre" avec params [gm] et params [sp] pour @table.
J'ai trouvé une idée pour créer dynamic_select en utilisant javascript. Mais, j'ai besoin de remplir dynamiquement ou un seul temps le traitement des paramètres relationnels [gm] et params [sp] en utilisant uniquement des rails. S'il vous plaît, aidez-moi.
Hoa: Yaa ... Exactement comme mentionné .. mais, je dois appliquer ce concept sans javascripts. Une idée avec Rails? –
Même si vous voulez implémenter la fonctionnalité côté serveur, du code JavaScript est requis. Pour être précis, lorsqu'un utilisateur sélectionne un pays, vous devez soumettre le formulaire pour obtenir les états correspondants. Et la soumission de formulaire ici sera déclenchée par l'événement JavaScript onchange. – Hoa