XForms: установить выбор по умолчанию в раскрывающемся списке в привязке - PullRequest
1 голос
/ 11 июня 2010

У меня есть главный экземпляр с именем «myinstance», который имеет цвет элемента.Цвет может быть «красный», «синий», «зеленый» или «желтый».Цвета заполняются в раскрывающемся списке из другого экземпляра, называемого «экземпляром цвета».Когда моя форма загружается, я хочу, чтобы по умолчанию в раскрывающемся списке было установлено «Зеленый» в привязке набора узлов.

<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>

1 Ответ

3 голосов
/ 11 июня 2010

Значение по умолчанию раскрывающегося списка будет отражать значение, сохраненное в экземпляре.Вы можете установить значение по умолчанию непосредственно в вашем экземпляре, например:

<color>Green</color>

, или вы можете установить значение с помощью setvalue, например, в вашей модели:

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

Обновлено после вашего комментария: если вы хотите использовать расширение Orbeon Forms xxforms: по умолчанию, попробуйте:

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

Также обновлено, чтобы отразить тот факт, что данные экземпляра должны содержать «зеленый», а не «Color3».

...