Я проводил юнит-тестирование формы и обнаружил, что существует некоторая серьезная проблема с автоматическим индексом табуляции, который дает Орбеон.
В моем случае мне нужны следующие индексы вкладок 1-7, как показано цифрой на рисунке.
Модель:
<xforms:model>
<xforms:instance id="dropdown-values">
<form>
<yes-no>
<options>Yes</options>
<options>No</options>
</yes-no>
</form>
</xforms:instance>
</xforms:model>
Логика для создания радио в форме:
<xforms:itemset nodeset="instance('dropdown-values')/yes-no/options">
<xforms:label ref="." />
<xforms:value ref="." />
</xforms:itemset>
В приведенном выше примере есть такая функция, как, если в опции «Включить текст» выбрано «Нет», следующие текстовые поля отключены. В настоящее время Orbeon предоставляет tabindex по умолчанию и переключается с выбранной радиокнопки на следующее поле. Т.е .:
- если радио выбрано как «нет», навигация с использованием вкладки будет 2-> 6 и повтор
- если радио выбрано как «Да», навигация с использованием вкладки будет 1-> 3-> 4-> 5-> 7 и повторите
Но предполагаемая функциональность:
- если радио выбрано как «нет», навигация с использованием вкладки будет 1-> 2-> 5-> 6, затем повторите.
- , если радио выбрано как «Да», навигация с использованием вкладки будет 1-> 2-> 3-> 4-> 5-> 6-> 7