【发布时间】:2015-07-18 05:14:17
【问题描述】:
我正在尝试使用以下代码修改表格行的背景颜色。但是,我收到解析器错误,因为关闭 tr 标记没有匹配的开始 tr。我尝试使用 @: 而不是 @Html.Raw(...),但我得到了同样的错误。如果我在条件块之外键入 tr 标签,它会呈现单个标签并且表格加载正常(只是没有交替的背景颜色)。
<table>
<tr>
<th>Count</th>
<th>Username</th>
</tr>
@foreach (var item in Model)
{
i++;
if (i % 2 == 0){
@Html.Raw("<tr>");
}
else{
@Html.Raw("<tr style=\"background-color: #c9c9c9\">");
}
<td>@i.ToString()</td>
<td>
@Html.DisplayFor(modelItem => item.User)
</td>
</tr>
}
</table>
【问题讨论】:
-
这种情况下不需要Raw,只需打印HTML
-
@Html.Raw(i%2==0 ? "
" : "")