【发布时间】:2016-02-21 18:40:23
【问题描述】:
我有一个div,每个div 有两个divs,如下所示:
<div class="col">
<div class="item-c color1">..</div>
<div class="item-c color2">..</div>
</div>
我从数据库中读取数据,我想用 foreach 语句重复这个 div。
我使用下面的代码,但我得到了Runtime Error
<div class="col">
@foreach (var item in Model)
{
<div class="item-c @("color" + index.ToString()) ">..</div>
if (index % 2 == 0)
{
<text></div><div class="col"></text>
}
index++;
if (index > 8) { index = 1; }
}
遇到没有匹配开始标签的结束标签“div”
【问题讨论】:
-
不清楚你的逻辑是什么。如果您的模型包含 5 个项目,您期望 3 个
<div class="col">,前 2 个包含 2 个<div class="item-c ...>,最后一个仅包含<div class="item-c color5>? -
index % 2是0或1,但绝不是2。因此,您的if-block 永远不会执行。 -
@StephenMuecke 是的,最后一个只包含一个
div -
@MariusSchulz 是的,它的错误和更新
-
我不明白逻辑...1。你想重复col吗?,2.为什么重复中的逻辑?如果您要从 DB 中获取,那么我假设您知道项目的数量,所以只是对它们进行 for-each,看不到为什么需要索引逻辑。
标签: html asp.net-mvc razor