使用Ruby on Rails动态地将类添加到.erb中的div

时间:2010-06-10 15:43:39

标签: ruby-on-rails ruby

我有这个div

<div class='notice'>

我希望结果是

<div class="notice error">

有没有办法在我的erb中添加一个类?我试过了

<div class="notice #{new_class}">

但是当它渲染时,它不会转移到ruby代码中......

和想法?

3 个答案:

答案 0 :(得分:24)

这是<%= %>

<div class="notice <%= new_class %>">

答案 1 :(得分:13)

我相信

<div class="notice <%= h new_class -%>">

有效,尽管有点难看。你也可以做更漂亮,但更长的

<%= content_tag(:div, "Your content here", :class => "notice #{new_class}") %>

答案 2 :(得分:0)

如果您使用的是HAML,这很简单

.notice { class: "#{new_class}" }

如果某些条件为真,也可以添加。仅当完成百分比等于100时,才会添加绿色类别。

.progress-bar{style: "width: #{percent_complete}%;", class: [(percent_complete == 100) && "green"]}