我有一个包含五列的重复控件,其值为“2.30”或“1.78”(保存为数字值)。
我现在想在计算列值平均值的重复控件下创建一个列总计,例如:(2.30 + 1.78) / 2
我知道如何获取重复控件中的文档数,但是如何获取列的所有值?
getComponent("repeat1").getRowCount()
嗨,您可以使用重复控件的 var 属性来访问整行的值并将它们保存在 viewScope 中。比你可以用他们做任何你想做的事:
<xp:repeat id="repeat1" rows="30" value="#{view1}" var="entry"
indexVar="indexvar">
<xp:panel>
<xp:text escape="true" id="computedField1">
<xp:this.value><![CDATA[#{javascript:var values:java.util.Vector = entry.getColumnValues();
var array = (viewScope.add == null)? new Array():viewScope.add;
array.push(values.elementAt(/* column */1))
viewScope.put("add",array);
return indexvar;
}]]></xp:this.value>
</xp:text>
</xp:panel>
</xp:repeat>
然后您可以显示它们或您需要的任何内容:
<xp:text value="#{viewScope.add}">