如何控制 Ruby on Rails 3 中选择框的大小?
Posted
技术标签:
【中文标题】如何控制 Ruby on Rails 3 中选择框的大小?【英文标题】:How to control the size of the select box in Ruby on Rails 3? 【发布时间】:2011-05-24 11:46:14 【问题描述】:我这样创建选择框:
f.select(:my_select_name, options_for_select(...))
如何控制选择框的大小(宽度)?
对于输入文本字段我这样做:
f.text_field(:field_name, :size => my_size)
但是对于“选择”它不起作用。
请指教。
【问题讨论】:
【参考方案1】:总的来说,我使用:
<%= f.select(:my_select_name, [1,2,3,4,5], , :style => "width:70px") %>
或者,如果我使用 Twitter Bootstrap 之类的东西,我会使用一个类:
<%= f.select(:my_select_name, [1,2,3,4,5], , :class => "col-md-1") %>
【讨论】:
谢谢,为我工作。你也可以这样做<%= f.select(:foo_id, Foo.all.collect|foo| [foo.name, foo.id,], , :style => "width:250px")
【参考方案2】:
select 的基本语法是
select(object, method, choices, options = , html_options = )
选项被下拉选项值替换,并且 您可以将 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 = )
这里的选项类似于select的html_options。
例如。 <%= select_tag 'company_name', options_for_select(get_company_name), :class => "select1"%>
更多详情请见select Tag 和select
【讨论】:
嗨!我在哪里可以看到html_options
和options
的所有可用选项?
常用的html_options有:multiple-允许多选,:disabled-禁用输入,:size-设置大小,:class-定义类,:onclick-调用javascript onclick等键创建标准的 HTML 属性。对于选项,您可以查看api.rubyonrails.org/classes/ActionView/Helpers/…
谢谢,但我还是不明白如何设置选择框的大小。 :size
不适用于 select
(仅适用于文本字段)。能详细点吗?
如果您为选择框提供选项大小,它将把它作为垂直大小,对于宽度,您可以使用 " select1"%> 并为css中的select1类提供宽度,或者您可以使用 'width: 500px;'%>
现在我明白了!非常感谢!!以上是关于如何控制 Ruby on Rails 3 中选择框的大小?的主要内容,如果未能解决你的问题,请参考以下文章
如何根据从下拉列表中选择的 CATEGORY 来控制 NEW/EDIT 视图中的列标题。带有 MYSQL 的 Ruby on Rails
Ruby on Rails 表单添加带有文本框的“其他”选项以选择下拉菜单
如何在 ruby on rails 中获取控制器和操作列表?