2010-12-13 6 views

Répondre

10

Le Syntax de base pour select est

select(object, method, choices, options = {}, html_options = {}) 

Les options sont remplacer par les valeurs des options de menu déroulant et vous pouvez remplacer les html_options pour la largeur.

par ex. <% select("company", "branch_id", Branch.all.collect {|b| [ b.name, b.id ] }, { :prompt => "Select" }, {:class => "companySelect" })

Pour select_tag vous pouvez utiliser

select_tag(name, option_tags = nil, options = {}) 

Ici, l'option est similaire à html_options de sélection.

par ex. <%= select_tag 'company_name', options_for_select(get_company_name), :class => "select1"%>

Pour plus de détails s'il vous plaît voir select Tag et select

+0

Salut! Où puis-je voir toutes les options disponibles pour 'html_options' et' options'? –

+0

Les options html couramment utilisées sont: multiple - autoriser plusieurs choix,: disabled - désactiver l'entrée,: size - définir la taille,: class - définir la classe,: onclick - appelle javascript onclick et une autre clé crée des attributs HTML standard. Pour les options, vous pouvez consulter http://api.rubyonrails.org/classes/ActionView/Helpers/FormOptionsHelper.html#method-i-options_for_select – ssri

+0

Merci, mais je ne comprends toujours pas comment définir la taille de la sélection boîte. ': size' ne fonctionne pas pour' select' (uniquement pour les champs de texte). Pourriez-vous élaborer? –

14

En fond, je l'utilise:

<%= f.select(:my_select_name, [1,2,3,4,5], {}, :style => "width:70px") %> 

Ou si je me sers quelque chose comme Twitter Bootstrap, j'utilise une classe:

<%= f.select(:my_select_name, [1,2,3,4,5], {}, :class => "col-md-1") %> 
+0

Merci, alors travaillez pour moi. Vous pouvez aussi faire comme ceci '<% = f.select (: foo_id, Foo.all.collect {| foo | [foo.name, foo.id,]}, {},: style =>" largeur: 250px ") ' – ksugiarto

+0

Merci cela a fonctionné pour moi aussi. –

Questions connexes