【发布时间】:2022-12-12 01:10:04
【问题描述】:
我想将项目列表显示为一个句子,其中一些项目以不同的颜色突出显示。 <span class="class-name"></span>。
我已经设法将它显示为两个单独的句子(数组),尽管我找不到将它们连接起来的解决方案并且只突出显示所需的句子。
尽管下面的代码用于排序,但我无法找到令人满意的解决方案来显示它。
# items = ['flour', 'oil', 'egg', 'salt']
# in_stock = ['flour', 'oil']
# items_in_stock = []
# items_not_in_stock = []
items.each do |item|
if in_stock.include?(item)
items_in_stock << item
elsif !in_stock.include?(item)
items_not_in_stock << item
end
end
# items_in_stock = ['flour', 'oil']
# items_not_in_stock = ['egg', 'salt']
<p>
<%= items_in_stock.to_sentence %>
<strong>
<%= items_not_in_stock.to_sentence %>
</strong>
</p>
结果,我得到了两个不理想的句子,因为它应该显示为一个句子,并突出显示几个单词(例如,使用 strong )。
=> 面粉和油鸡蛋和盐
我也虽然做了以下事情:
#checked_items = []
items.each do |item|
if in_stock.include?(item)
checked_items << item
elsif !in_stock.include?(item)
checked_items << "<span class='red'>#{item}</span>"
end
end
但后来我意识到它不起作用,结果是:
<p>
<%= checked_items.to_sentence %>
</p>
#=> Flour, oil, <span class='red'> egg </span> and <span class='red'> salt </span>
这是我在这里的第一个问题,希望它得到很好的解释。 在此先感谢您的帮助。
【问题讨论】:
标签: html ruby-on-rails ruby erb