希望有人可以提供帮助,因为我似乎无法使其工作,并且无法在网上找到同样问题的任何地方。
我的站点地图:
<?xml version="1.0" encoding="utf-8" ?>
<mvcSiteMap xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://mvcsitemap.codeplex.com/schemas/MvcSiteMap-File-4.0"
xsi:schemaLocation="http://mvcsitemap.codeplex.com/schemas/MvcSiteMap-File-4.0 MvcSiteMapSchema.xsd"
>
<mvcSiteMapNode title="Website Home" url="www.someaddress.com">
<mvcSiteMapNode title="menu1" url="#">
<mvcSiteMapNode title="sub1" url="www.someaddress2.com">
<mvcSiteMapNode title="sub of sub1" url="www.someaddress3.com" ></mvcSiteMapNode>
</mvcSiteMapNode>
</mvcSiteMapNode>
</mvcSiteMapNode>
</mvcSiteMap>
然后我按照这样显示菜单:
@Html.MvcSiteMap().Menu()
结果我期待:
Website Home | Menu 1
| Sub 1
|Sub of Sub 1
然后当鼠标悬停在Menu1 Sub1上时,当鼠标悬停在Sub1上时,Sub 1的Sub出现。
目前这不起作用,无论XML标记是否有子节点等,它总是显示所有平面如此:
Website Home | Menu 1
| Sub 1
|Sub of Sub 1
似乎无法找到获得3级菜单的方法。
答案 0 :(得分:0)
该菜单是一个模板化的MVC HTML帮助器。默认模板主要用于MVC 4和5的默认模板(如果将MvcSiteMapProvider.Web
升级到与MVC 5一起使用的最新版本,但NuGet默认不安装它),但没有花哨JavaScript菜单等。
您还可以编辑HTML以匹配您用于控制用户与菜单交互的JavaScript / CSS框架,但包中不包含此类框架。有关自定义菜单模板以满足您需求的起点,请参阅this answer。