如何在重复控件中访问计算字段的值? 在下面的示例中,我在重复控件中有cfT5Budget。我希望能够访问每个cfT5Budget控件的值(repeat1:0:cfT5Budget,repeat1:1:cfT5Budget等等。)
我希望能够将相同的值复制到我的第二个重复控件中。我将在第二个控件中执行其他操作但是对于此示例,它只是一个简单的代码。
<xp:table>
<xp:repeat id="repeat1" var="rowItem1" indexVar="indexVar1">
<xp:this.value><![CDATA[#{javascript:['a', 'b', 'c']}]]></xp:this.value>
<xp:tr>
<xp:td>
<xp:text escape="true" id="cfT5Budget" value="#{javascript:5 + indexVar1}">
</xp:text>
</xp:td>
</xp:tr>
</xp:repeat>
</xp:table>
<xp:table>
<xp:repeat id="repeat2" var="rowItem2" indexVar="indexVar2">
<xp:this.value><![CDATA[#{javascript:getComponent('repeat1').getValue()}]]></xp:this.value>
<xp:tr>
<xp:td>
<xp:text escape="true" id="cfT5Budget2" value="#{javascript:VALUE OF cfT5Budget GOES HERE}">
</xp:text>
</xp:td>
</xp:tr>
</xp:repeat>
</xp:table>
提前谢谢你:)
答案 0 :(得分:2)
简答:使用数据绑定。
答案很长:
在MVC中,您的代码不应与View(a.k.a字段)交互,而是与模型(a.k.a数据)交互。因此,不是像计算示例那样计算值,而是使用repeat中提供的变量名绑定它们。
您与该集合(阵列)进行交互而不是字段。这使得代码更容易和更健壮,因为代码不需要关心使用什么UI元素。
希望有所帮助