0

我有一个包含五列的重复控件,其值为“2.30”或“1.78”(保存为数字值)。

我现在想在计算列值平均值的重复控件下创建一个列总计,例如:(2.30 + 1.78) / 2

我知道如何获取重复控件中的文档数,但是如何获取列的所有值?

getComponent("repeat1").getRowCount()
4

1 回答 1

1

嗨,您可以使用重复控件的 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}">
于 2013-06-12T11:31:34.173 回答