我尽力搜索,但无济于事,希望这是一个简单的问题!
我在ViewModel对象中使用Html.EditorFor作为集合。
但我希望表的交替行具有交替的类(“奇数”,“偶数”)。我尝试使用我在SO上选择的以下方法,但在编辑器模板中使用它会重置“计数”值,它会使每一个都相同。
@helper AlternativeBackgrounds(string style1, string style2)
{
if (ViewBag.count == null)
{
ViewBag.count = 0;
}
<text>class=" @(ViewBag.count % 2 == 1 ? style1 : style2)" </text>
ViewBag.count++;
}
如:
<tbody>
<tr @AlternativeBackgrounds("odd", "even")>
<td style="width:200px;">
这可以通过代码吗?
我想要实现的目标:
<tbody>
@Html.EditorFor(x => x.SomeCollection)
</tbody>
编辑模板
@model = SomeModel
<tr class=??>
<td style="width:200px;">
@Html.LabelFor(x => x.SomeProperty)
</td>
<td>
@Html.LabelFor(x => x.SomeProperty)
</td>
... etc
</tr>
谢谢大家。
答案 0 :(得分:3)
使用javascript / jquery不能完成所有这些操作,并且不能保持实际代码清洁吗?
你只是做
$(document).ready(function() {
$('.myTable tr:odd').addClass('oddRow');
});
如果出于样式原因它是纯粹的,你也可以使用:nth-child(N)来使用CSS:
tr:nth-child(even) { ... }
tr:nth-child(odd) { ... }