【问题标题】:Conditional setting of li element class with ASP.NET MVCASP.NET MVC对li元素类的条件设置
【发布时间】:2017-01-23 17:59:17
【问题描述】:

我在 /Shared/MainMenu.cshtml 中有一个简单的菜单:

  <ul class="nav navbar-nav">
    <li class="active">@Html.ActionLink("Home", "Index", "Home")</li>
    <li>@Html.ActionLink("Features", "Index", "Features", "active")</li>
    <li>@Html.ActionLink("Faq", "Index", "Faq")</li>
    <li>@Html.ActionLink("Help", "Index", "Help")</li>
  </ul>

我想指示当前页面,但在 Index.cshtml 中设置一个值并设置相关的类

  • 元素为“活动”,就像上面的“主页”菜单项一样。

    设置相关类的最简单方法是什么

  • 不设置其他?
  • 【问题讨论】:

      标签: css asp.net-mvc razor menuitem


      【解决方案1】:

      也许?

      @{
          String controller = HttpContext.Current.Request.RequestContext.RouteData.Values["controller"].ToString();
      }
      
      <ul class="nav navbar-nav">
          <li class="@(controller == "Home" ? "active": "")">@Html.ActionLink("Home", "Index", "Home")</li>
          <li class="@(controller == "Features" ? "active": "")">@Html.ActionLink("Features", "Index", "Features", "active")</li>
          <li class="@(controller == "Faq" ? "active": "")">@Html.ActionLink("Faq", "Index", "Faq")</li>
          <li class="@(controller == "Help" ? "active": "")">@Html.ActionLink("Help", "Index", "Help")</li>
        </ul>
      

      【讨论】:

      • 太好了,谢谢!我快到了,但我想我错过了括号。哦!
      猜你喜欢
      • 1970-01-01
      • 2016-01-28
      • 2018-11-29
      • 2014-02-01
      • 2012-08-12
      • 2015-03-20
      • 1970-01-01
      • 2017-04-10
      • 2021-01-24
      相关资源
      最近更新 更多