2009-06-11 12 views

risposta

18

select_tag prende un options hash come parametro finale, in cui si possibile aggiungere qualsiasi attributo HTML per la selezione. Quindi, per aggiungere un attributo onchange:

select_tag :variable, options_from_collection_for_select(:all, :id, :name), :onchange => 'your_onchange_handler()' 
+1

sarò in grado di specificare un'azione in un controller come un evento onchange? se no, come faccio allora? – Nave

+1

Non sono abbastanza sicuro di cosa intendi? –

+0

ho un'azione nel mio controller da eseguire e non un evento javascript. sarò in grado di farlo con l'evento onchange o ci sono altri modi? – Nave

7

provare qualcosa di simile:

:onchange => remote_function(:url => {:controller => 'controller', :action => 'action'}) 
+1

funziona solo con gli helper del prototipo, che sono esclusi da Rails 3.0. 9 http://apidock.com/rails/ActionView/Helpers/PrototypeHelper/remote_function – damoiser

2

Per un select_tag, basta aggiungere:

{:onchange => "myHandler();" } 

Inoltre, se onchange non funziona si potrebbe desiderare provare onChange con una maiuscola C.

Infine, assicurarsi che NO T PER CONFUSARE un select_tag con un modulo select.

Vedere la mia risposta a una domanda simile, solo per quanto riguarda una forma selezionare e non un select_tag

Adding An Onchange Event To A Form Select

Problemi correlati