.NET在HTML属性中获取变量值

时间:2017-08-29 15:09:30

标签: html .net asp.net-mvc

这是我第一次使用.NET,请原谅我的无知。

我正在尝试更改HTML元素中class属性的值,具体取决于某些if/else语句,如下所示:

@if (item.HasAir)
{
    var icon = "fa fa-plane";
    var circleColour = "icon-bg-blue";
}
else if (item.HasCar)
{
    var icon = "fa fa-car";
    var circleColour = "icon-bg-cyan";
}

<span class="icon-cirle @circleColour" aria-hidden="true">
    <span class="@icon"></span>
</span>

但是,当我在浏览器中刷新页面时,我收到了Compilation Error

  

当前上下文中不存在名称'circleColour'

看看上面的代码,谁能解释我做错了什么?

其他信息:

  • .NET Framework版本: 4.0.x
  • ASP.NET版本: 4.7.x

1 个答案:

答案 0 :(得分:1)

我的错误,我最初没有声明默认值,以防if / elseif语句未满足,在我的情况下,他们不是。

以下似乎解决了这个问题:

@{
    var icon = "fa fa-plane";
    var circleColour = "icon-bg-blue";
}

@if (item.HasCar)
{
    icon = "fa fa-car";
    circleColour = "icon-bg-cyan";
}
...