2015-04-17 117 views
2

我有行动剑道菜单:剑道菜单同时选择多个项目,ASP.NET MVC

@(Html.Kendo().Menu().Name("menu") 
.Items(it => {          
     it.Add().Text("Item1").Items(subit => { 
       subit.Add().Text("subitem1).Action("Contracts", "Home"); 
       subit.Add().Text("subitem2").Action("Contracts", "Home", 
                 new { flag = true }); 
}); 
}) 
) 

我的问题是,每当我选择subitem1subitem2的项目将选择两种(类.k-state-selected加入两个项目)。 我想这是因为我有相同的控制器操作。我不想为subitem2创建单独的操作。有什么解决方法吗?

非常感谢!

+0

只是为了某些情况下,什么是有2-8导航链接到同一页面像你在这个例子中有什么原因呢? – 2015-04-17 13:02:12

+0

这实际上是Kendo所做的:它检查当前的URL并在指向它的项目上设置“k-state-selected”类。 –

+0

@gerdi,它们根据路径值返回具有不同数据的视图。 –

回答

0

我不是没有,如果这个工程,因为我没有剑道库,我似乎无法在http://dojo.telerik.com/正确测试,但基本上

火灾子菜单被打开之前。

$("#menu").kendoMenu({ 
    open: function(e) { 
      if (location.search != "") { 
       $('#menu #item a:first').removeClass('.k-state-selected'); 
     } 
    } 
}); 

然后,它会查看是否在地址有属性,每location.search,如果是的话那么它从菜单中删除第一个菜单项,这不是一个传递任何剑道类。

我不知道怎么剑道构建其项目,但你可能也想看看,如果在激活时,子菜单被打开,它的动画完成会更好地工作

火灾。

$("#menu").kendoMenu({ 
    activate: function(e) { 
     // handle event 
    } 
});