我正在尝试将一些奇/偶样式应用于ASP.NET MVC 3中由Razor编辑器模板呈现的数据行。
以下是我可能视图的基本代码:
@model List<MyProject.Whatever>
@Html.EditorFor(Model)
这里是可能的编辑器模板:
@model MyProject.Whatever
<div class="@( AnIInAnEvenOrOddRow ? "even" : "odd" )">
@Model.SomeData @Html.TextBoxFor(m => m.SomeTextToType)
</div>
有人知道如何从编辑器模板中检测偶数/奇数情况吗?
干杯...
答案 0 :(得分:1)
我总是解释数据行==
@WebGrid
已包含该功能,您也可以轻松implement paging and sorting,为什么不使用它? < / p>
如果您仍想手动完成所有操作,可以使用
之类的内容@{
int iRow = 0;
}
@forach( var item in Model )
{
iRow++;
<div class="@( iRow % 2 == 0 ? "even" : "odd" )">
@Model.SomeData @Html.TextBoxFor(m => m.SomeTextToType)
</div>
}
<强>更新强>
WebGrid
帮助器就像gridview
中的堂兄webforms
完全可以自定义一样,如果你之前webforms
,你知道你可以简单地添加一个templatecolumn
并附加任何东西
您喜欢控件,WebGrid
助手是相同的,例如this fine article中所述:
@grid.GetHtml(
columns: grid.Columns(
grid.Column(
"Title",
"Movie",
@<text><div style='width: 10em'>@item.Title</div></text>), ...
答案 1 :(得分:0)
您可以使用jQuery添加行样式,如下面的SO问题所述:
What is the best way to style alternating rows in a table?
这会在答案中对jQuery脚本进行一些调整,但我认为它仍然有用。