Формы Orbeon - четкая выпадающая метка

У меня есть 2 выпадающих списка (страна_1 и страна_2), в которых указаны страны. Оба требуются. Если я выберу значение some в раскрывающемся списке country_1, раскрывающееся меню country_2 должно быть очищено (значение и метка).

Пример:

  1. В выпадающем списке country_1 я что-то выбираю.
  2. В выпадающем списке страна_2 что-то выбираю.
  3. В выпадающем меню country_1 меняю значение. country_2 должно быть ясно.
  4. Когда я проверяю форму, я получаю ошибку в раскрывающемся списке country_2 (поэтому кажется, что значение было очищено).

Я хочу, чтобы на шаге 3 у страны_2 была пустая метка.

Я добавил действие по изменению значения в раскрывающийся список country_1, которое должно очистить значение и метку раскрывающегося списка country_2.

Пример формы: https://demo.orbeon.com/demo/fr/orbeon/builder/edit/bc71b6532f4faee1ec711105a2db00bb65995d80

Исходный код: https://gist.github.com/mmakos-profidata/9728f086da3abc7bd96af27c8d5a70b8

Экран ошибки:  введите описание изображения здесь


person m.makos    schedule 03.12.2020    source источник


Ответы (1)


Перенос вашего кода внутрь <xf:model> - добьется цели. Я обновил вашу форму на demo.orbeon.com, но если она исчезнет, ​​это фрагмент, который я поместил прямо в <xf:model>:

<xf:action event="xforms-value-changed" observer="c_country_1-control">
    <xf:action if="//c_country_1 != 'af'">
        <xf:setvalue ref="//c_country_2"/>
        <xf:setvalue ref="//c_country_2/@label"/>
    </xf:action>
</xf:action>
person avernet    schedule 08.12.2020
comment
эй, Алекс, ты уверен, что это должно сработать? Я опубликовал эту форму (на demo.orbeon.com), протестировал ее и получил ту же ошибку, что и до. Я протестировал его в своей локальной среде (версия orbeon 2019.1.0) и тоже получил ошибку. Я также убедился, что код находится внутри ‹xf: model›. Я обновил свой вопрос и добавил скриншот с ошибкой. - person m.makos; 10.12.2020
comment
@ m.makos Моя проблема: я обновил код в своем ответе выше. Вместо . для доступа к значению первого раскрывающегося списка следует использовать //c_country_1. В источнике формы я также удалил условия видимости, которые были у вас для полей значений и меток, которые были у вас во второй строке, чтобы мы могли видеть, что эти значения сбрасываются. - person avernet; 10.12.2020
comment
эй, Алекс, все еще не работает, как я ожидал. Мне недостаточно очистить поля значений и меток (эти поля предназначены только для изменения значений отображения). Ярлык в раскрывающемся списке c_country_2 также должен быть очищен. Я отредактировал свой вопрос и форму, чтобы упростить задачу. - person m.makos; 11.12.2020
comment
Ах! Значение сбрасывается в данных, но элемент управления неправильно сохраняет старое значение. Это ошибка. Я создал проблему # 4731, и мы постараемся исправить ее. как раз к наступающему 2020.1. - person avernet; 15.12.2020
comment
@ m.makos Итак, проблема # 4731 теперь устранена и будет включен в 2020.1. - person avernet; 30.12.2020