剃刀中foreach中html和代码的混合

本文关键字:混合 代码 html foreach 剃刀 | 更新日期: 2023-09-27 18:27:24

我想用行流体类创建引导网格。需要将所有带有span4类的嵌套div分隔成块。所以我想要这样的html:

    <div class="row-fluid">
        <div class="span4"></div>
        <div class="span4"></div>
        <div class="span4"></div>
    </div>
    <div class="row-fluid">
        <div class="span4"></div>
        <div class="span4"></div>
        <div class="span4"></div>
    </div>

我在剃刀中有代码

@{
int counter = 3;
}
@foreach (var config in Model)
{
    @if (counter == 3)
    {
       <div class="row-fluid">
       @counter = 0;
    }
    @Html.Partial("_ConfigBar", config)
    @if (counter == 2)
    {
        </div>
    }
    @{counter++;}
}

局部视图只是把div和span4类放在一起,没有什么有趣的。

但它没有起作用。有人能告诉我出了什么问题吗?

剃刀中foreach中html和代码的混合

这样的东西应该可以创建您需要的东西:

@{
    int counter = 0;
    foreach (var config in Model)
    {
        if (counter == 0)
        {
           @Html.Raw("<div class='"row-fluid'">")
        }
        else if (counter > 0 && counter % 3 == 0 )
        {
           @Html.Raw("</div><div class='"row-fluid'">")
        }
        @Html.Partial("_ConfigBar", config)
        counter++;
    }
    @Html.Raw("</div>")
}

这将:

  • 在第一个循环上创建一个开始div
  • 关闭当前打开的div,并在每个第4个循环上打开一个新的div
  • 循环完成后,添加一个结束div