【问题标题】:ASP.NET MVC Create dynamic navigation sub-menu on the master pageASP.NET MVC 在母版页上创建动态导航子菜单
【发布时间】:2010-05-16 18:09:09
【问题描述】:

我正在尝试创建一个 ASP.NET MVC 母版页,因此其上的站点导航将如下所示:

主菜单:<strong>Home</strong> | About | News
子菜单: Home_Page1 | Home_Page2

子菜单部分应始终显示当前选择的主菜单页面的子菜单(在上面的示例中选择了“主页”页面),除非用户将鼠标悬停在另一个主菜单项上(然后显示该项目的子菜单) -menu)。

在 ASP.NET MVC 中获得此类功能的最佳方式是什么?

【问题讨论】:

    标签: c# .net asp.net jquery asp.net-mvc


    【解决方案1】:

    如果您使用 HtmlHelper 扩展方法创建菜单,例如:

    <%= Html.RenderMenu() %>
    

    您可以使用 HtmlHelper 实例查看请求上下文并确定您所在的页面。一旦你有了这个,你就可以查找(数据库,配置,你的菜单数据在哪里......)要呈现哪个子菜单。

    这里有一些东西可以让你指向我认为你正在寻找的方向:

    public static MvcHtmlString RenderMenu(this HtmlHelper html) {
                var somePage = Html.ViewContext.HttpContext.Request.RawUrl;
                var menu = lookupMenuBasedOnPage(somePage);
    
                return MvcHtmlString.Create(menu.Render());
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-08-02
      • 1970-01-01
      • 2011-06-11
      • 2013-07-30
      • 2023-03-19
      相关资源
      最近更新 更多