可能重复:
在菜单中标记“当前”导航项的最佳方式
现在我们没有为我们的菜单按钮设置任何 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);
}
先感谢您!