MVC + Razor:如何有条件添加开始<div>?

时间:2019-01-15 13:52:33

标签: asp.net if-statement

我想根据是否设置了变量来修改div。

所以我想做这样的事情:

<li>
                      {% if gn.Nodes -%}
                          <span class="menu-toggle"><a href="{{gn.Url}}" class="">{{ gn.Name }}</a> <span class="arrow-toggle glyphicon glyphicon-menu-down"></span></span> 
                      {% else %}
                          <a href="{{gn.Url}}">{{ gn.Name }}</a>
                      {% endif %}

                      {% if gn.Nodes -%}
                          <ul class="ul-unactive">
                          {% for gnn in gn.Nodes -%}
                              <li>{{ gnn | A }} </li>
                          {% endfor -%}    
                          </ul>
                      {% endif -%}
                  </li>

但是我在Visual Studio中收到以下错误消息:

  

div元素未关闭。所有元素必须是   自动关闭或具有matchig结束标签。

我的div元素稍后在页面中关闭。

2 个答案:

答案 0 :(得分:6)

您可以在Razor中使用三元运算符。

<div style="@(SomethingIsSet ? "background:red" : "background:blue")">

答案 1 :(得分:0)

您可以使用JavaScript。只需将id标签放入div:<div id="mydiv">


然后使用JS:

var element = document.getElementById('mydiv');
if (something)
{
element.setAttribute('style','background-color: red;');
} else
{
element.setAttribute('style','background-color: blue;');
}