我希望我的表中的替代行被着色。什么是最好的方法,javascript,rails?
今天,我做了一个简单的<%num%2%>,但这是一个常见的操作,我认为应该有一个更聪明的方法来做到这一点
答案 0 :(得分:6)
如果您愿意在服务器端执行此操作,那么rails的方法是使用“循环”方法,这将处理模数2的东西,但如果您需要进行嵌套交替,也将处理命名空间着色。
http://api.rubyonrails.org/classes/ActionView/Helpers/TextHelper.html#M001753
e.g。
<%= cycle("even", "odd", :name => "row_class") -%>
如果您同时进行2个循环,则该名称仅用于避免冲突,它是可选的。
答案 1 :(得分:2)
如果这是一个选项,你可以使用jQuery轻松地做到这一点。链接到头部的jQuery库,理想情况下为表提供一个id或类,以便您可以识别它,并创建一个行将获得一半的类。然后,将其放入您的javascript:
jQuery(document).ready(function() {
jQuery('#table tr:even').addClass('stripes'); //could also be tr:odd
});
就是这样,真的。如果您不想创建单独的类,则可以随时添加样式:
jQuery(document).ready(function() {
jQuery('#table tr:even').css({'backgroundColor: blue', 'font: red'});
});
答案 2 :(得分:2)
这实际上是Rails内置的 - 检查ActionView Helpers中的“循环”方法。