如何将输出值绑定到模型中

时间:2014-05-14 11:45:17

标签: xml output orbeon xforms

我已将此绑定到输出字段:

 <xf:bind id="fr-form-binds" ref="instance('fr-form-instance')">
        <xf:bind id="Pokoj-bind" ref="dok:Pokoj" name="Pokoj" />
    </xf:bind>
     <xh:body>
    <xh:td>
      <xf:output id="Pokoj-control" value="concat('Pokój ',xxf:repeat-position())"
                                               bind="Pokoj-bind">
         <xf:label ref="$form-resources/Pokoj/label"/>
         <xf:hint ref="$form-resources/Pokoj/hint"/>
         <xf:alert ref="$fr-resources/detail/labels/alert"/>
      </xf:output>
    </xh:td>
   </xh:body>

但输出的值没有保存到模型中我将不胜感激如何将这个值绑定到模型上。

1 个答案:

答案 0 :(得分:0)

xf:input不同,它也可以向其绑定节点“写”一个值,例如当用户更改输入字段中的值时,xf:output只是从其绑定节点读取值,或者显示来自value="..."属性的值,就像您在此处所做的那样。但是除了bind="..."之外,xf:output上有value="..."这一事实并没有让xf:output将该值写入绑定节点。

通常,您可以通过将xf:output value="..."上的表达式移动到xf:bind calculate="..."来实现此目的。在您的情况下,您不能完全,因为xxf:repeat-position()在模型中不起作用。因此,您很可能需要编写类似calculate="concat('Pokój ',count(preceding-sibling::dok:Pokoj))"的内容。