0

我正在尝试加载模型并将每个模型单独设置,<td>当我达到 5 时,<td>我想自动启动一个新模型,<tr>但它并不能真正使用 if 语句。有可能还是我应该采用完全不同的方法?

这是我的代码:

<tr>
        @for (int i = 0; i < Model.Count; i++)
        {
            <td>
                <img width="200px" src="@Url.Action("GetImage", "Beheer", new { productId = Model[i].product_id }) " alt="pasfoto"/><br />
                <center><b>@Html.ActionLink(Model[i].naam, "PrProduct", "Categorie", new { id = Model[i].product_id }, null)</b></center>
                <center>€ @Html.Label(Model[i].prijs)</center> 
            </td>
        }
</tr>
4

2 回答 2

3

使用模运算符%。每次i%5 == 0,在周围打印一行td

@for (int i = 0; i < Model.Count; i++)
{
    @if(i%5 == 0)
    {
        <tr>
    }
    <td>
        <img width="200px" src="@Url.Action("GetImage", "Beheer", new { productId = Model[i].product_id }) " alt="pasfoto"/><br />
        <center><b>@Html.ActionLink(Model[i].naam, "PrProduct", "Categorie", new { id = Model[i].product_id }, null)</b></center>
        <center>€ @Html.Label(Model[i].prijs)</center> 
    </td>
    @if(i%5 == 0)
    {
        </tr>
    }
}

因此,当 0、5、10、15 等时,您将有一个表格行i

于 2013-03-28T13:55:02.477 回答
1
@for (int i = 0; i < Model.Count; i++)
{
@if(i%5 == 0)
{
    <tr></tr>
}
<td>
    <img width="200px" src="@Url.Action("GetImage", "Beheer", new { productId = Model[i].product_id }) " alt="pasfoto"/><br />
    <center><b>@Html.ActionLink(Model[i].naam, "PrProduct", "Categorie", new { id = Model[i].product_id }, null)</b></center>
    <center>€ @Html.Label(Model[i].prijs)</center> 
</td>
}

上面的代码对我有用。与Havelock给出的答案没有太大区别,但是如果您不关闭同一if语句中的html标签,它不会关闭上述代码中的括号。如果您使用边框,这种方式可能看起来不太好,因为我认为它会显示一个空行?但是,对我来说,这很好:)

于 2013-03-29T11:36:46.587 回答