您好我有以下代码,但循环中的if语句会导致语句失败,有什么想法吗?
@{ var count = 1; }
@foreach (var siteIcon in Model.SiteIconsList)
{
<div class="span2">
<a onclick="updateIcon(@siteIcon.ImageId)" href='#'>
<img class="iconImage" src="data:Image;base64,@(Html.Raw(Convert.ToBase64String(siteIcon.ImageData)))" alt="" />
</a>
</div>
if(count==5){
</div>
<div class="row-fluid">
count=1;
}
}
答案 0 :(得分:2)
似乎是关闭div混淆了剃刀。为了阻止这种情况,我通过在htmlstring中包装新的开始和结束div来使它工作,这阻止了它们被解析,我也对计数器进行了修正。
<div class="row-fluid">
@{
var count = 1;
foreach (var siteIcon in Model.SiteIconsList)
{
<div class="span2">
<a onclick=" updateIcon(@siteIcon.ImageId)" href='#'>
<img class="iconImage" src="data:Image;base64,@(Html.Raw(Convert.ToBase64String(siteIcon.ImageData)))" alt="" />
</a>
</div>
if (count == 5)
{
@(new HtmlString("</div><div class=\"row-fluid\">"))
count = 0;
}
count = count + 1;
}
}
</div>
答案 1 :(得分:0)
您的div格式不正确,之前关闭并稍后打开, 检查一下
</div>
<div class="row-fluid">
相反,你可以这样做
if(count==5){
<div class="row-fluid"> </div>
count=1;
}
答案 2 :(得分:0)
试试这个:
@foreach (var siteIcon in Model.SiteIconsList)
{
<div class="span2">
<a onclick="updateIcon(@siteIcon.ImageId)" href='#'>
<img class="iconImage" src="data:Image;base64,@(Html.Raw(Convert.ToBase64String(siteIcon.ImageData)))" alt="" />
</a>
</div>
if(count==5){
<div class="row-fluid">
</div>
count=1;
}
}
答案 3 :(得分:0)
首先,您不会在循环结束时递增计数,因此永远不会满足条件。
将Foreach改为For会更好:
for(int i=0; i<Model.SiteIconsList.Count;i++)
if(i==5){
<text></div>
<div class="row-fluid"></text>
count=1;
}
}
失败后会收到什么消息?您可能需要使用它来回到html渲染模式