2

我想写这段代码

<select name="date[birth]" id="date_birth" class = "span1">
      <option value="2011">2011</option>
      <option value="2012" selected="selected">2012</option>
      <option value="2013">2013</option>
      </select>

在 Rails 中,它有 select_year 助手,我只是写

= select_year(Date.today, :field_name => "birth", :start_year => 2011, :end_year => 2013)

我尝试通过属性向它添加 css 类:class => "span1",但它不起作用!请帮助我,谢谢

4

2 回答 2

9
= select_year(Date.today, {:field_name => "birth", :start_year => 2011, :end_year => 2013}, {:class => "span1"})
于 2012-10-06T17:23:43.837 回答
1

是的,答案是@aromero 提供的。您需要:class => "span1"在单独的哈希中添加。

如果您查看了函数声明并且无法实现,我试图解释这一点。

函数定义是

select_year(date, options = {}, html_options = {})

看,它实际上采用了三个参数,

  • 日期:当前日期
  • 选项:与显示信息相关的参数哈希
  • html_options:显示 html 标签的相关参数的哈希值。

因此,在您的情况下,添加类名实际上是html_options. 因此,您需要将这两个哈希分开并添加class_name最后一个。

这一点很重要,因为有很多 rails helper 以这种方式获取参数。并且始终参考apidock.com/railsguides.rubyonrails.org以清楚地了解任何 api。

于 2012-10-06T19:03:44.077 回答