MVC 3 - 显示行中项目的集合

时间:2011-09-29 21:07:17

标签: c# asp.net asp.net-mvc asp.net-mvc-3 razor

我有一个我正在展示的集合,如下所示:

@foreach (var employee in Model.Employees)
{
    <a href="#">@employee.Name</a>
}

这只显示一行中的所有内容。我想以3行显示集合,这样我就可以显示3个项目,中断到新行,显示接下来的3个项目,再到新行中断,等等。

有一种简单的方法吗?

3 个答案:

答案 0 :(得分:3)

Mystere Man是对的,我通常使用列表项作为链接集合的语义标记元素。

<ul>
@foreach (var employee in Model.Employees)
{
    <li><a href="#">@employee.Name</a></li>
}
</ul>

然后使用CSS样式使您的列表看起来如何使用(没有项目符号等)如果您使ul有一个固定的,每个li内部宽度为1/3,然后使li显示为内联块,这应该为您提供所需的内容。 (jsfiddle

答案 1 :(得分:1)

这与MVC无关,这是一个HTML问题。您需要呈现HTML以使其执行您想要的操作。查看渲染的输出。

通常,您可以在div或其他元素中包装行,以便创建所需的语义标记。

答案 2 :(得分:0)

不使用css,这是一种简单的方法。

@{ var i = 0; }
@foreach (var employee in Model.Employees)
{
    @{ i++; } 
    <a href="#">@employee.Name</a>
    @if(i%3 == 2)
    {
        <br/>
    }
}