Menu 动态显示菜单节点及其子节点DNN
我已经在皮肤文件中使用dnn:菜单对其进行了硬编码,以选择特定节点,但看起来我必须创建几个额外的皮肤来区分根菜单项(其中4个)之间的节点选择器 有没有一种方法,在任何给定页面上使用相同的皮肤文件,我可以知道我在哪个根菜单项上,以选项卡的形式循环遍历它的第一级子页面,同时在一个可扩展的手风琴部分中列出它们的子页面 嗯…越简单越好 使用Menu 动态显示菜单节点及其子节点DNN,menu,dotnetnuke,html-encode,ascx,Menu,Dotnetnuke,Html Encode,Ascx,我已经在皮肤文件中使用dnn:菜单对其进行了硬编码,以选择特定节点,但看起来我必须创建几个额外的皮肤来区分根菜单项(其中4个)之间的节点选择器 有没有一种方法,在任何给定页面上使用相同的皮肤文件,我可以知道我在哪个根菜单项上,以选项卡的形式循环遍历它的第一级子页面,同时在一个可扩展的手风琴部分中列出它们的子页面 嗯…越简单越好 使用 这个Accordian.XSLT显示出了希望,但扩展没有起作用 jQuery(函数($){ var options={initialIndex:-1}; $
这个Accordian.XSLT显示出了希望,但扩展没有起作用
jQuery(函数($){
var options={initialIndex:-1};
$.extend(选项,{},);
$(“#”)选项卡(“.toolsaccordion div.pane”,选项);
});
初始索引:
这里是menudef.xml
Accordion.xslt
http://www.itdraws.com/js/flowplayer.org-1.1.2-jQuery.tools.min.js
[清单]/tabs-accordion.css
好吧,使用Razor模板处理有条件的东西可能更容易
(您可以以MegaMenu模板为例。)一个非常简短的答案是,您将以“accordio格式”生成HTML(使用您正在使用的任何模板),然后使用jquery.accordio来完成accordio工作
查看jquery文档,以获取需要生成的HTML结构示例。我这里有几个有用的答案 DNN ascx if/else()语句如下所示:
<% if (singleConditionExample) { %>
alert("Hello World");
<% } else if (multipleConditionsHere() || multipleConditionsHere() && multipleConditionsHere()) { %> // standard operators. you get the idea.
alert("elseifConditionsHere");
<% } else { %>
alert("Else Msg");
<% } %>
警报(“你好世界”);
//标准操作员。你明白了。
警报(“elseifConditionsHere”);
警报(“Else Msg”);
至于获取DNN page tabId、tabName、ParentId,这些都进入了if()条件
//来自DNN BREADCRUB的当前页面根父级
PortalSettings.ActiveTab.BreadCrumbs[0]
//当前DNN页面名称
PortalSettings.ActiveTab.TabName.Equals(“财富管理”)
//当前DNN页面ID号
//当前DNN页面父ID
DotNetNuke.Entities.Portals.PortalController.GetCurrentPortalSettings().ActiveTab.ParentId.Equals(480)
如果要将它们写入页面,请执行以下操作:
我确信还有更多的东西要学,当我学到更多的时候,因为它涉及到获取DNN页面id、面包屑等…我会更新这个答案
干杯 这是绝对可能的,我会看看我是否能找到一些例子代码。那将是超级棒克里斯,谢谢!至少我会考虑写/不写菜单代码块的条件代码。这适用于一个特定的页面:0,1 2和UP?但我需要做的至少是在条件语句中标识+0父级。这是我的头撞在墙上:P–对不起,戈麦斯,我还没有机会把它凑在一起。我不知道该怎么做,因为我带来了jquery
设置这个“$(function(){$(“#lobNavs”)。accordion({collapsible:true,heightStyle:“content”,active:curNode});”并使用此菜单代码<代码>并相应地设置了样式。给了我我需要的,有点…我仍然需要能够显示/不显示基于根父级的内容。这是我需要在skin/ascx文件中包含的重要部分。我有这个,但它只在一个页面上有效(它是父页面)
这个也有效,但同样,只在一个页面上有效
<% if (singleConditionExample) { %>
alert("Hello World");
<% } else if (multipleConditionsHere() || multipleConditionsHere() && multipleConditionsHere()) { %> // standard operators. you get the idea.
alert("elseifConditionsHere");
<% } else { %>
alert("Else Msg");
<% } %>