2009-12-04 7 views
0

je dois envoyer un nom de classe avec mon appel observe_field afin que je puisse mettre à jour le text_field correcte (il y a des multiples sur la même page)variables Ruby: avec des observe_field

<%= observe_field "songlists_" + section.id.to_s + "_song_name", 
     :frequency => 0.5, :url => { :controller => :songlists, :action => 
     :get_artist }, :update => text_class , 
:with => "'song_name=' +encodeURIComponent(value)+'&songlists_classname='+ xxxxxxxx" %> 

Est-il possible d'insérer une variable ruby ​​dans l'instruction: with où 'xxxxxxxx' est affiché ci-dessus?

Ou tout autre moyen?

Répondre

1

Bien sûr, pourquoi pas? Vous passez simplement une chaîne à: avec, insérez donc une variable comme dans n'importe quelle autre chaîne, par ex. "...&songlists_classname=#{your_variable}":

<%= observe_field "songlists_#{section.id}_song_name", 
        :frequency => 0.5, 
        :url => { :controller => :songlists, :action => :get_artist }, 
        :update => text_class, 
        :with => "'song_name=' + encodeURIComponent(value) + '&songlists_classname=#{your_variable}'" %> 
+0

merci, je l'avais essayé pensé toutes toutes les combinaisons de cela, doit bien eu mon «au mauvais endroit – Nick

+0

Oui, il peut être difficile lorsque vous imbrication des chaînes JavaScript dans les chaînes Ruby. Ne pas oublier d'accepter ma réponse si cela a fonctionné pour vous. –