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 == 0td

@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>
}

上記のコードは私にとってはうまくいきました。ハブロックさんの回答と大差ないのですが、同じif文内でhtmlタグを閉じないと上のコードの括弧が閉じません。空の行が1つ表示されると思うので、境界線を使用すると、この方法は見栄えが悪いかもしれませんか? しかし、私にとってはこれでうまくいきました:)

于 2013-03-29T11:36:46.587 に答える