我现在正在将应用程序布局的标题栏中的标签视为一个视图,但似乎正在管理所选的"选择"财产不是wotking。这是我在页面中的代码:
<xe:this.titleBarTabs>
<xe:repeatTreeNode indexVar="1" var="tab">
<xe:this.children>
<xe:basicLeafNode label="# {tab.label}"
submitValue="#{tab.label}"
onClick="#{javascript:sessionScope.selectedTab = tab.label;}">
<xe:this.href><![CDATA[#{javascript:
"home.xsp?action=openDocument&documentId=" + tab.unid;}]]>
</xe:this.href>
<xe:this.selected>
<![CDATA[#{javascript:tab.label==sessionScope.selectedTab;}]]>
</xe:this.selected>
</xe:basicLeafNode>
</xe:this.children>
<xe:this.value><![CDATA[#{javascript:getTabs();}]]></xe:this.value>
</xe:repeatTreeNode>
</xe:this.titleBarTabs>
这可能是因为Href和onClick不能同时存在或者我只是遗漏了什么吗?
像往常一样,万分感谢你的帮助。等不及要回来......
答案 0 :(得分:1)
您必须决定当用户点击标题栏标签时会发生什么:
或强>
onClick的帮助提供了提示:
因此,在用户点击标签页并显示新内容后,您无法使用onClick和范围变量来显示选项卡 。
完成此任务
&tab=
的网址参数tab.label
添加到 href 网址您的href和所选属性将如下所示:
<xe:this.href><![CDATA[#{javascript:
"home.xsp?action=openDocument&documentId=" + tab.unid + "&tab=" + tab.label}]]>
</xe:this.href>
<xe:this.selected>
<![CDATA[#{javascript:tab.label === param.tab}]]>
</xe:this.selected>
请勿忘记在代码中删除 onClick 属性。你不再需要了它。
答案 1 :(得分:0)
按照Knut的建议(我认为)...注释掉basicLeafNode的onClick属性,并将其函数移动到xI:applicationLayout控件的onItemClick。
onItemClick的代码就是这样......
var clickedTab = context.getSubmittedValue();
sessionScope.selectedTab = clickedTab;