如何控制Ruby on Rails 3中选择框的大小?

Mis*_*hko 9 forms select ruby-on-rails ruby-on-rails-3

我创建这样的选择框:

f.select(:my_select_name, options_for_select(...))
Run Code Online (Sandbox Code Playgroud)

如何控制选择框的大小(宽度)?

对于输入文本字段我做:

f.text_field(:field_name, :size => my_size)
Run Code Online (Sandbox Code Playgroud)

但对于"选择",它不起作用.

请指教.

Rya*_*yan 15

在要点中,我使用:

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

或者,如果我使用Twitter Bootstrap之类的东西,我会使用一个类:

<%= f.select(:my_select_name, [1,2,3,4,5], {}, :class => "col-md-1") %>
Run Code Online (Sandbox Code Playgroud)


ssr*_*sri 10

select的基本synatx是

select(object, method, choices, options = {}, html_options = {})
Run Code Online (Sandbox Code Playgroud)

选项由下拉选项值替换,您可以替换宽度的html_options.

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

对于select_tag,您可以使用

select_tag(name, option_tags = nil, options = {}) 
Run Code Online (Sandbox Code Playgroud)

这里的选项类似于select的html_options.

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

有关详细信息,请参阅选择标记选择

  • 如果为选择框提供选项大小,则将其作为垂直大小,对于宽度,您可以使用<%= select_tag'company_name',options_for_select(get_company_name),:class =>"select1"%>并提供宽度css中的类select1或者你可以使用<%= select_tag'company_name',options_for_select(get_company_name),:style =>'width:500px;'%> (2认同)