我的一个好主意看起来比我最初想象的要少一些。
背景 - 我需要在其中一列中使用 DBLookups 对视图执行经典的重复控制解决方案。我需要对列进行总计,因此我决定使用 viewScope 变量来保存小计,并在计算重复控件的行时添加这些值。
理论上听起来不错,但由于某种原因,如果我在重复控件中使用计算字段,则该值被计算(并附加到小计)两次。我已经通过以下几行代码建立了这一点,在重复中使用了计算字段和编辑框,其中包含相同的代码:
<xp:text escape="true" id="computedField9">
<xp:this.value><![CDATA[#{javascript:
//some calculations, nothing to see here*
var subTotal = viewScope.get("valueColumnTotal");
viewScope.put("valueColumnTotal", subTotal + sumVals);
sessionScope.put("Testing", sessionScope.get("Testing") + "~" + sumVals);
return sumVals;
}]]></xp:this.value>
//converters and stuff, nothing to see here
</xp:text>
<xp:inputText id="inputText1">
<xp:this.value><

