0

可能重复:
在菜单中标记“当前”导航项的最佳方式

现在我们没有为我们的菜单按钮设置任何 css 类,但是当一个按钮通过 jQuery 悬停时我们会这样做。我想在服务器端代码中设置 css 类处于活动状态,因此如果用户直接导航不同的部分,则相应的菜单按钮将已经具有正确的 css 样式。唯一的问题是我不确定如何在 MVC 中最好地做到这一点。按钮位于这样的共享局部视图中(当然功能不完整,但应该足够让您了解这个想法):

@if (User.Identity.IsAuthenticated)
{
    <ul id="mainMenu">
        <li>@Html.ActionLink("Accounts", "List", "Accounts", new { userId = 2 }, null)</li>
        <li><a href="?">Config</a></li>
        <li><a href="?">Reports</a></li>
    </ul>
}

当用户单击“帐户”按钮时,我想为<li>元素设置一个 css 类为active。这样做是AccountsController最好的(或唯一的)地方吗?即使是共享的部分视图?

以下是用户单击 Accounts 链接时调用的方法:

[HttpGet]
public ViewResult List(Int64 userId)
{
    var serviceAccounts = _accountManager.GetAccounts(userId);
    var accounts = Mapper.Map<IEnumerable<ServiceModels.Account>, List<AccountModel>>(serviceAccounts);

    return View("List", accounts);
}

先感谢您!

4

0 回答 0