1

我有一个名为“myinstance”的主实例,它具有元素颜色。颜色可以是“红色”、“蓝色”、“绿色”或“黄色”。颜色填充在另一个名为“colorsinstance”的实例的下拉列表中。当我的表单加载时,我希望在节点集绑定中将下拉列表中的默认值设置为“绿色”。

<instance id="colorsinstance">  
    <items>
        <item label="Color1" value="Red"/>
        <item label="Color2" value="Blue"/>
        <item label="Color3" value="Green"/>
        <item label="Color4" value="Yellow"/>
    </items>
</instance>

主实例绑定如下:

<xforms:bind nodeset="instance('myinstance')">
    <xforms:bind nodeset="./color" required="true()"/>
</xforms:bind>
4

1 回答 1

3

下拉列表的默认值将反映存储在实例中的值。您可以将默认值直接放在您的实例中,例如:

<color>Green</color>

或者您可以使用 setvalue 设置值,例如在您的模型中:

<xforms:setvalue ev:event="xforms-model-construct-done"
                 ref="color">Green</xforms:setvalue>

根据您的评论更新:如果您想使用 Orbeon Forms xxforms:default 扩展,请尝试:

<xforms:bind nodeset="./color" required="true()" xxforms:default="'Green'"/>

还更新以反映实例数据必须包含“Green”而不是“Color3”这一事实。

于 2010-06-11T01:56:28.747 回答