Parece que no puedo encontrar la sintaxis para agregar una clase a una etiqueta de selección generada por Rails collection_select
. ¿Un poco de ayuda?
html
ruby-on-rails
drop-down-menu
tybro0103
fuente
fuente
Respuestas:
Muchos ayudantes de Rails toman varios argumentos hash. La primera suele ser las opciones para controlar el ayudante en sí, y la segunda son las html_options, donde especifica identificadores personalizados, clases, etc.
La definición del método se ve así:
collection_select(object, method, collection, value_method, text_method, options = {}, html_options = {})
Notará el múltiple '= {}' en la lista de parámetros. Para usar esto, el primer conjunto de opciones que especificaría debe estar entre llaves:
collection_select(:user, :title, UserTitle.all, :id, :name, {:prompt=>true}, {:class=>'my-custom-class'})
Si no tiene ninguna opción para especificar además de la clase html, simplemente coloque un marcador de posición de hash vacío:
collection_select(:user, :title, UserTitle.all, :id, :name, {}, {:class=>'my-custom-class'})
La documentación adicional de la API está disponible en: http://apidock.com/rails/ActionView/Helpers/FormOptionsHelper/collection_select
fuente
<%= collection_select(:question , :text, Question.all , :id, :text, {:prompt => 'Select Question...'}, {:class=>'input', :name=>'normalSelect', :id=>'normalSelect', :style=>'width:50%', :onchange=>"$('#accordion').accordion('activate',2);$('#blind').show('blind', 500)"}) %>
= f.collection_select :category_id, Category.order(:name), :id, :name, {}, {class: "store-select"}
fuente