预先使用Rails循环助手创建的现有列表

时间:2013-04-29 10:11:27

标签: ruby-on-rails ruby-on-rails-3

我的页面上有一个评论列表,斑马颜色有助于区分每个评论。

我使用rails循环辅助程序实现斑马着色,我在每个注释中使用了部分:

<div class="span9 <%= cycle("odd_response", "even_response") -%>">

我通过一个表单动态更新此列表,该表单在用户提交新呼叫时通过AJAX将新评论添加到列表顶部。

由于我使用与模板相同的部分来呈现此新评论,因此评论仅作为“odd_response”着色,而与前一个响应的颜色无关,即它再次开始循环过程。

如何让部分尊重表格中存在的颜色顺序?

2 个答案:

答案 0 :(得分:0)

我的解决方案是放弃循环调用并将此CSS用于斑马条纹。

tr:nth-child(even) {
  background-color: red;
}


tr:nth-child(odd) {
  background-color: white;
}

这适用于所有现代浏览器,不支持IE7 / 8。

答案 1 :(得分:0)

我最终通过在create.js操作中放置一些自定义JavaScript来解决这个问题,该操作首先检查最后一条注释的背景颜色,然后在页面上呈现对象后立即将新注释更改为相反的颜色。