加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

Asp.Net Mvc突出显示当前页面链接技术?

发布时间:2020-12-15 18:53:45 所属栏目:asp.Net 来源:网络整理
导读:我需要在菜单中突出显示活动链接。我的菜单是在主页上的方式。我在寻找实现这个的最好的方法?有任何想法吗? 解决方法 处理这个问题的最好方法是编写一个HTML帮助器。您可以使用RouteData.Values [“action”]获取当前执行的操作,并与菜单名称进行比较,如
我需要在菜单中突出显示活动链接。我的菜单是在主页上的方式。我在寻找实现这个的最好的方法?有任何想法吗?

解决方法

处理这个问题的最好方法是编写一个HTML帮助器。您可以使用RouteData.Values [“action”]获取当前执行的操作,并与菜单名称进行比较,如果它们匹配,则应用将突出显示的CSS类。
public static MvcHtmlString MenuItem(
    this HtmlHelper htmlHelper,string action,string text
)
{
    var menu = new TagBuilder("div");
    var currentAction = (string)htmlHelper.ViewContext.RouteData.Values["action"];
    if (string.Equals(
            currentAction,action,StringComparison.CurrentCultureIgnoreCase)
    )
    {
        menu.AddCssClass("highlight");
    }
    menu.SetInnerText(text);
    return MvcHtmlString.Create(menu.ToString());
}

然后使用这个帮助器来渲染菜单项:

<%: Html.MenuItem("about","About us") %>
<%: Html.MenuItem("contact","Contact us") %>
...

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读