<table>
@{var counter = 1; }
<tr>
@foreach (var item in Model)
{
<td>
@Html.DisplayFor(modelItem => item.courseName)
@Html.DisplayFor(modelItem => item.courseSubject)
@Html.DisplayFor(modelItem => item.institute)
</td>
if (counter % 3 == 0)
{
@:</tr><tr>
}
}
</tr>
</table>
我想在一个表中,每行3列显示的记录。 这是我试过的方式。 但还是在一排中的所有记录。 我怎么能做到了。
您需要更新循环内的计数器变量。 这应该这样做。
<table>
@{var counter = 1; }
<tr>
@foreach (var item in Model)
{
<td>
@Html.DisplayFor(modelItem => item.courseName)
</td>
if(counter%3 == 0)
{
@:</tr><tr>
}
counter++;
}
</tr>
</table>
如果我正确地读你的问题,你想每行3列?
如果是这样的情况下,进行以下更改到你的HTML结构。 您需要添加三个<td>
元素,使三列
@foreach (var item in Model)
{
<td>
@Html.DisplayFor(modelItem => item.courseName)
</td>
<td>
@Html.DisplayFor(modelItem => item.courseSubject)
</td>
<td>
@Html.DisplayFor(modelItem => item.institute)
</td>
if (counter % 3 == 0)
{
@:</tr><tr>
}
}
像Shyju在他回答的建议,我真的不知道你是用一个计数器那里所做的事情,因为它没有在每次循环递增。