【问题标题】:Bootstrap badge colour is not working in railsBootstrap 徽章颜色在 Rails 中不起作用
【发布时间】:2020-05-03 11:45:56
【问题描述】:

我试图根据它们的值突出显示文本“true”或“false”,如果值为 true,我希望标签为绿色,如果值为 false,我希望标签是红色的。我在 index.html.erb 文件中编写了这段代码。 这是代码:

<%= @valid_feed_sync = true %>
<% class_feed = @valid_feed_sync == 'true' ? 'label label-success' : 'label label-danger'%>
<b>Valid:</b> <span class="<%=class_feed%>"> <%=@valid_feed_sync%> </span></h4>

但是,无论它们的值如何,我总是得到红色的标签。

【问题讨论】:

  • 所以你的意思是它有时可以有label-success的类但仍然是红色的?或者您是说没有从条件中应用正确的类?
  • 能否把你的erb模板编译的结果放上来。你可以看到它打开你的浏览器控制台。
  • ...您还可以告诉我们:您使用的是哪个版本的引导程序?也许那会是 badge badge-success 而不是“label...”

标签: ruby-on-rails ruby bootstrap-4


【解决方案1】:

&lt;% class_feed = @valid_feed_sync == 'true' ? 'label label-success' : 'label label-danger'%&gt;

您将布尔值与字符串进行比较,因此条件始终属于 else 情况。

试试这个:&lt;% class_feed = @valid_feed_sync == true ? 'label label-success' : 'label label-danger'%&gt;

【讨论】:

  • 您可能只想使用@valid_feed_sync 而不是@valid_feed_sync == true。明确检查真实值是否实际上是 true 没有意义
猜你喜欢
  • 2019-09-10
  • 2019-04-08
  • 2020-10-25
  • 1970-01-01
  • 2015-06-03
  • 2017-07-09
  • 2018-11-17
  • 2018-02-28
  • 1970-01-01
相关资源
最近更新 更多