Xpages 如何计算动态内容控件的BasicLeafNode的选定属性-更新日期:2014年3月26日
我用以下内容创建了一个XPage:首先使用应用程序布局创建一个自定义布局控件。我将布局控件添加到xpage,然后添加了一个动态内容控件。我将控件配置如下:Xpages 如何计算动态内容控件的BasicLeafNode的选定属性-更新日期:2014年3月26日,xpages,xpages-extlib,Xpages,Xpages Extlib,我用以下内容创建了一个XPage:首先使用应用程序布局创建一个自定义布局控件。我将布局控件添加到xpage,然后添加了一个动态内容控件。我将控件配置如下: <xe:dynamicContent id="dynamicContent1" defaultFacet="GovernanceReviews" useHash="true"> <xp:this.facets> <xc:ccViewDocumentTemplates xp:key="DocumentTemplat
<xe:dynamicContent id="dynamicContent1" defaultFacet="GovernanceReviews"
useHash="true">
<xp:this.facets>
<xc:ccViewDocumentTemplates xp:key="DocumentTemplates"></xc:ccViewDocumentTemplates>
<xc:ccViewGovProcurementReviews xp:key="GovProcurementReviews"></xc:ccViewGovProcurementReviews>
<xc:ccViewGovRevReporting xp:key="GovRevReporting"></xc:ccViewGovRevReporting>
<xc:ccViewGovRevWOCompleted xp:key="GovRevWOCompleted"></xc:ccViewGovRevWOCompleted>
<xc:ccViewGovernanceReviews xp:key="GovernanceReviews"></xc:ccViewGovernanceReviews>
<xc:ccViewProfilesByType xp:key="ProfilesByType"></xc:ccViewProfilesByType>
<xc:ccViewProfilesWithTargetCompl xp:key="ProfilesWithTargetCompl"></xc:ccViewProfilesWithTargetCompl>
<xc:ccViewLastUpdated xp:key="LastUpdated"></xc:ccViewLastUpdated>
<xc:ccViewUserGuide xp:key="UserGuide"></xc:ccViewUserGuide>
<xc:ccViewTracking xp:key="Tracking"></xc:ccViewTracking>
</xp:this.facets>
</xe:dynamicContent>
然后,我在左列中插入了一个navigator控件,并创建了BasicLeafNodes以对应于动态内容控件。我使用href属性并使用#content=“”来显示正确的内容
这工作得很好,但我在弄清楚如何在选择导航器时突出显示选择时遇到了问题。我知道我需要计算Selectd属性,但我不知道如何获取xp:key值,以便将其与SubmitValue进行比较。我知道这可能很简单,但我想不出来
谁能给我点化一下吗
谢谢
乔丹
添加于2014年3月26日-我感觉这与使用动态内容控件的href属性执行内容切换有关。我知道这使得基本节点连接起来。因此,不确定导航器如何记录正在执行的链接以及如何捕获该链接
MJ添加值是submitValue属性 在McClick事件中 将提交的值指定给viewScope变量
viewScope.Selected=context.getSubmittedValue()
最后检查viewScope变量是否等于选定属性中的item submit值。这需要计算
if(viewScope.Selected="byCategory"){
return true
}else{
return false
}
以下内容适用于我:
if(viewScope.Selected == "byCategory"){
return true
} else{
return false
}
必须使用两个相等的符号(或三个)进行相等性测试。一个相等的符号显然总是返回true。我是通过jQuery实现的。只需将以下代码放入包含导航器的自定义控件
$( function() {
if (window.location.hash.length > 0) {
select()
}
});
$(window).on('hashchange', function() {
select();
});
function select() {
$(".lotusColLeft .lotusMenu .lotusBottomCorner li").removeClass(
"lotusSelected")
$(".lotusColLeft .lotusMenu .lotusBottomCorner li a")
.filter(
function() {
return window.location.hash.indexOf($(this).attr(
'href')) > -1
}).parent().addClass("lotusSelected")
}
好的,我试过了,现在所有的节点都高亮显示了。有什么想法吗?您在每个节点上添加了不同的值来检查吗?是的,我的if语句根据每个节点的submitvalue进行了检查。我试图将导航器代码添加到我的原始帖子中,但我认为它太大了。@Fridrik如果你给我电子邮件,我会将导航器代码发送给你。@xpagedeveloper.com