asp.net-mvc – 从子页面选择MVC中母版页上的右侧菜单
发布时间:2020-12-16 03:58:03 所属栏目:asp.Net 来源:网络整理
导读:我在MVC应用程序的共享_layout.cshtm文件(母版页)中有几个列表项. 就像是: ul liHome/li liabout/li licontact/li liblog/li/ul 当用户在主页中时,我希望家里的项目选择了类,如下所示: li class="selected"Home/li 等等.做这个的最好方式是什么? 在常规的
我在MVC应用程序的共享_layout.cshtm文件(母版页)中有几个列表项.
就像是: <ul> <li>Home</li> <li>about</li> <li>contact</li> <li>blog</li> </ul> 当用户在主页中时,我希望家里的项目选择了类,如下所示: <li class="selected">Home</li> 等等.做这个的最好方式是什么? 在常规的asp.net网站上,我曾经在母版页中有一个方法,并从子页面调用该方法,但在MVC中,我不知道该怎么做. 谢谢. 解决方法
您可以编写自定义帮助方法:
public static MvcHtmlString MenuItem( this HtmlHelper htmlHelper,string text,string action,string controller ) { var li = new TagBuilder("li"); var routeData = htmlHelper.ViewContext.RouteData; var currentAction = routeData.GetRequiredString("action"); var currentController = routeData.GetRequiredString("controller"); if (string.Equals(currentAction,action,StringComparison.OrdinalIgnoreCase) && string.Equals(currentController,controller,StringComparison.OrdinalIgnoreCase)) { li.AddCssClass("selected"); } li.SetInnerText(text); return MvcHtmlString.Create(li.ToString()); } 然后: <ul> @Html.MenuItem("Home","home","home") @Html.MenuItem("About","about","home") @Html.MenuItem("Contact","contact","home") @Html.MenuItem("Blog","blog","home") </ul> 帮助程序检查当前操作和控制器,如果它们与作为辅助程序的参数传递的操作匹配,它将选定的CSS类附加到li. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- asp.net(C#)禁止缓存文件不让文件缓存到客户端
- 使用NPOI读取EXCEL中的数据到DataTable中
- ASP.NET MVC3 AJAX.BeginForm AjaxOptions OnSuccess OnFai
- ASP.NET Web API请求完成后如何处置资源?
- TeamCity – 在ASP.net网站上发布的问题
- 在ASP.Net日历控件中默认选择当前日期
- .net – 制作类似TinyURL.com的简短网址
- 如何将Ninject集成到ASP.NET Core 2.0 Web应用程序中?
- asp.net-mvc-3 – MVC3 – 类型double与前导零的3位小数位
- 在ASP.NET Web服务(ASMX)的JSON请求中,什么时候区分大小写是
推荐文章
站长推荐
- asp.net-mvc – 使用自定义[required]属性时使用
- ASP.NET Core Web App应用第三方Bootstrap模板
- asp.net-mvc – Razor视图引擎:复杂循环和HTML
- 需要帮助设置ASP.net 3.5(截图)
- asp.net-mvc – 在做PostAsync时为什么等待不起作
- ASP.NET 4的IIS和服务器操作系统要求
- asp.net – 我应该将MDF文件附加到SQL Express还
- asp.net – 目的是什么?
- asp.net-mvc – 如果没有设置,如何在MVC3中停止显
- asp.net-mvc – ASP.NET MVC RenderAction重新呈
热点阅读