这是我的xPage,有两个重复控件(第二个是嵌套的)
<?xml version="1.0" encoding="UTF-8"?>
<xp:view xmlns:xp="http://www.ibm.com/xsp/core">
<xp:this.beforePageLoad><![CDATA[#{javascript:viewScope.MY_SCOPE = new Array();
viewScope.MY_SCOPE.push(["A1", "B1", ["aaa1", "bbb1", "ccc1"]]);
viewScope.MY_SCOPE.push(["A2", "B2", ["aaa2", "bbb2", "ccc2"]]);
viewScope.MY_SCOPE.push(["A3", "B3", ["aaa3", "bbb3", "ccc3"]]);}]]></xp:this.beforePageLoad>
<xp:repeat id="repeat1" rows="30"
value="#{javascript:viewScope.MY_SCOPE}" var="rowData" indexVar="rowDataIndex"
repeatControls="true">
<xp:text escape="false" id="computedField1">
<xp:this.value><![CDATA[#{javascript:rowData[0]}]]></xp:this.value>
</xp:text>
<xp:repeat id="repeat2" rows="30" var="rowDataSub" indexVar="rowDataSubIndex"
repeatControls="true">
<xp:this.value><![CDATA[#{javascript:rowData[2]}]]></xp:this.value>
<xp:text escape="false" id="computedField2">
<xp:this.value><![CDATA[#{javascript:rowDataSub[0]}]]></xp:this.value>
</xp:text>
<xp:text escape="false" id="computedField3">
<xp:this.value><![CDATA[#{javascript:rowDataSub[1]}]]></xp:this.value>
</xp:text>
<xp:br></xp:br>
</xp:repeat>
<xp:br></xp:br>
</xp:repeat>
</xp:view>
作为数据我正在使用数组scopeVariable。它适用于父重复,并在计算字段computedField1中显示scopeVariable数据。对于嵌套重复,我使用一个数组作为scopeVariable的第三个元素。但是嵌套重复在计算字段computedField2中没有显示任何内容。我的重复有什么不对吗?
答案 0 :(得分:0)
更改此行代码
<xp:this.value><![CDATA[#{javascript:rowDataSub}]]></xp:this.value>
嵌套重复控件已经在子数组中的所有条目上运行
因此,请使用rowDataSub
而不是rowDataSub[0]
访问当前条目。