1

我试图让我的设计警报被忽略。根据引导文档,我认为 data-dismiss="alert" 是必需的:http: //getbootstrap.com/2.3.2/components.html#alerts

但是,我尝试按照以下内容将其添加到我的应用程序布局中,并且收到语法错误:

<% flash.each do |key, value| %>
        <%= content_tag(:div, value, class: "alert alert-#{key}", data-dismiss: "alert") %>
<% end %>

没有 data-dismiss 代码可以正常工作,但不可关闭。

这是语法错误:

...rt alert-#{key}", data-dismiss: "alert") );@output_buffer.sa...
...                               ^ 

data-dismiss: "alert" 的要点是根据引导按钮使用 X 将其关闭。这涉及包含“X”按钮,如何修复语法错误并包含“X”?

4

2 回答 2

1

变量和选项名称中不能有这样的连字符。

尝试改用该data选项:

<%= content_tag(:div, value, class: "alert alert-#{key}", data: { dismiss: "alert" }) %>

这是一个rails c使用的小例子data

2.0.0p247 :006 > content_tag :p, 'Foo', data: { test: 'bar' }
 => "<p data-test=\"bar\">Foo</p>"

更新如果你想让它完全根据 Bootstrap 文档中的规定工作,试试这个:

<% flash.except(:timedout).each do |key, value| %>
  <%= content_tag :div, class: "alert alert-#{key}", data: { dismiss: "alert" } do %>
    <button type="button" class="close" data-dismiss="alert">&times;</button>
    <%= value %>
  <% end %>
<% end %>
于 2013-09-15T20:39:37.270 回答
0
<%= content_tag(:div, value, class: "alert alert-#{key}", :"data-dismiss" => "alert") %>

这应该工作

于 2013-09-15T20:47:33.623 回答