Xml Orbeon XForms-HowTo:通过触发器复制中继器字段的值
我有一个XForm,其中包含一个用于呈现表的转发器。表的每一行都有一个触发器。当触发器被激活时,我想为当前行获取表中一个单元格的值,并将该值复制到另一个实例Xml Orbeon XForms-HowTo:通过触发器复制中继器字段的值,xml,orbeon,xforms,Xml,Orbeon,Xforms,我有一个XForm,其中包含一个用于呈现表的转发器。表的每一行都有一个触发器。当触发器被激活时,我想为当前行获取表中一个单元格的值,并将该值复制到另一个实例 <xh:table class="dataTable"> <xh:tr> <xh:th>Date</xh:th> <xh:th>Copy?</xh:th> </xh:tr> <xf:repeat
<xh:table class="dataTable">
<xh:tr>
<xh:th>Date</xh:th>
<xh:th>Copy?</xh:th>
</xh:tr>
<xf:repeat nodeset="instance('fr-form-instance')/Pathology/*:TimeSeriesStructure[*:Type/*:TypeId='ALB']/*:DataPoint">
<xh:tr>
<xh:td>
<xf:output ref="*:DateTime"/>
</xh:td>
<xh:td>
<xf:trigger xxf:modal="true">
<xf:label>Select</xf:label>
<xf:action ev:event="DOMActivate">
<xf:setvalue bind="target-bind">
<xf:output ref="*:DateTime"/>
</xf:setvalue>
</xf:action>
</xf:trigger>
</xh:td>
</xh:tr>
</xf:repeat>
</xh:table>
日期
复制
挑选
在这种情况下,我希望在激活触发器时将日期字段的值复制到由“target bind”绑定的项
当前(如上所述),现有值(通过“目标绑定”绑定的元素)已被删除,但新值(*:DateTime)未被复制。现在已解析。问题是setvalue部分中的目标绑定。这意味着输出正在寻找名为DateTime的绑定子节点。当它应该查看中继器正在渲染的节点时。将其移出变量并以这种方式访问它解决了问题
<xh:table class="dataTable">
<xh:tr>
<xh:th>Date</xh:th>
<xh:th>Copy?</xh:th>
</xh:tr>
<xf:repeat nodeset="instance('fr-form-instance')/Pathology/*:TimeSeriesStructure[*:Type/*:TypeId='ALB']/*:DataPoint">
<xf:var name="itemVal" value="*:DateTime"/>
<xh:tr>
<xh:td>
<xf:output value="$itemVal"/>
</xh:td>
<xh:td>
<xf:trigger xxf:modal="true">
<xf:label>Select</xf:label>
<xf:action ev:event="DOMActivate">
<xf:setvalue bind="target-bind" value="$itemVal" />
</xf:action>
</xf:trigger>
</xh:td>
</xh:tr>
日期
复制
挑选