asp.net-mvc - 在 cshtml 中使用带有变量的 div 标签周围的 if else 语句

标签 asp.net-mvc asp.net-mvc-4 razor

我目前无法成功将以下代码添加到我的 View 中,这是一个 .cshtml 文件。

我有一个 if 和 else 语句,它根据条件呈现不同的面板。

我的代码如下:

foreach (var item in groupItem)
{
   @if (item.NextDue < DateTime.Today)
   {
     <div class="panel panel-danger" id="panel_@i">
   }
     else
   {
     <div class="panel panel-info" id="panel_@i">
   }
}

我在代码周围尝试了很多 @{ 组合,但我认为问题是 ids 也有一个 @ 符号。如果我在 foreach 循环中注释掉代码,代码就可以正常执行。但是,将代码添加到foreach循环中会导致“找不到foreach循环的关闭}”错误

任何有关能够执行此代码的帮助将不胜感激。

最佳答案

这就是你如何做到...

    @{
    int[] x = new int[] { 1, 2, 3, 4 };
    string alertClass = "";
}
@foreach (var y in x)
{
    if (y % 2 != 0)
    {
        alertClass = "panel-info";
    }
    else
    {
        alertClass = "panel-danger";
    }
    <div id="panel_@y" class="panel @alertClass">Some Text_@y</div>
}

关于asp.net-mvc - 在 cshtml 中使用带有变量的 div 标签周围的 if else 语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31900034/

相关文章:

asp.net-mvc - Razor不会在HiddenFor中渲染隐藏的精确PK

c# - MVC 4 Viewmodel 无法在回发时进行数据绑定(bind)

asp.net-mvc - @Html.ActionLink 如何添加查询字符串

c# - 焦点移出后从文本输入获取值并显示该值的数据

javascript - 发送 json 以查看但显示为字符串

c# - 将 "default"登录系统用于新的 MVC 应用程序

c# - 防止在 MVC Ajax.BeginForm 中使用某些条件更新 html?

asp.net - Linq To Sql Intellisense 属性名称

asp.net-mvc - 将转换应用到 web.config 失败

c# - 使用 HTML Helpers 时列表模型绑定(bind)索引不正确