2009-12-11 11 views
0

est-il possible d'utiliser Ajax et faire le résultat en liste de sélection avec Formtastic?Faire un résultat ajax comme liste de sélection avec formtastic

exemple:

semantic_form_for @user, :url => profile_path(@profile.id) do |f| 
    - f.inputs do 
    - f.input :province, :label => "Province", :as => :select, :collection => ["province-1", "province-2", "province-3"] 
    - f.input :city, :label => "City", :as => :select 
    - f.buttons do 
    = f.submit "Submit" 

Je veux faire la liste de sélection du changement de ville dynamique en fonction de la province.

Répondre

1

Si vous utilisez Protoype, ce que vous avez décrit peut être fait avec quelques lignes de Javascript et le prototype Ajax.Updater. D'abord, assurez-vous de passer à Formtastic l'argument: include_blank => true à la fin de la ligne f.input: collection => [], afin que Formtastic sache rendre une liste déroulante vide. Ensuite, faites en sorte que vos contrôleurs retournent les options, et dans votre Haml:

:javascript 
    new Ajax.Updater({ success: 'some_select_tag' }, '/foo', { 
     // process/insert returned html options tags/data however you want 
     insertion: 'bottom' 
    });