Есть ли в xforms функция tabindex? - PullRequest
2 голосов
/ 17 марта 2011

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

В моем случае мне нужны следующие индексы вкладок 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>

http://i.stack.imgur.com/9QvKq.jpg

В приведенном выше примере есть такая функция, как, если в опции «Включить текст» выбрано «Нет», следующие текстовые поля отключены. В настоящее время Orbeon предоставляет tabindex по умолчанию и переключается с выбранной радиокнопки на следующее поле. Т.е .:

  • если радио выбрано как «нет», навигация с использованием вкладки будет 2-> 6 и повтор
  • если радио выбрано как «Да», навигация с использованием вкладки будет 1-> 3-> 4-> 5-> 7 и повторите

Но предполагаемая функциональность:

  • если радио выбрано как «нет», навигация с использованием вкладки будет 1-> 2-> 5-> 6, затем повторите.
  • , если радио выбрано как «Да», навигация с использованием вкладки будет 1-> 2-> 3-> 4-> 5-> 6-> 7

Ответы [ 2 ]

1 голос
/ 29 марта 2011

Если я хорошо понимаю, вы хотите, чтобы табуляция выполнялась в том порядке, в котором элементы управления находятся на странице. Проблема в том, что при переключении между переключателями:

  • Вы замечаете, что "курсор" идет после каждой радиокнопки.
  • Вы хотели бы, чтобы он перешел к следующему полю.

Я не уверен, какой браузер вы используете, например, когда я пытаюсь это сделать, если переключатель всегда выбран, курсор перемещается не по всем переключателям, а только к выбранному вами. То есть я получаю «то, что вы хотели бы», а не «то, что вы наблюдаете». Я протестировал это с Firefox 4 и IE 7.

Кстати, это поведение не имеет ничего общего с XForms; именно так работает табуляция через элементы управления HTML.

Tabs on Firefox 4

1 голос
/ 17 марта 2011

XForms предоставляет для этой цели атрибут navindex, определенный в разделе 8.1, Модуль управления формой ядра XForms :

... неотрицательное целое число в диапазон 0-32767, используемый для определения навигационная последовательность. Это дает авторский контроль над последовательностью в какие элементы управления формой пройдены.

Далее обсуждаются некоторые тонкости, связанные с навигацией navindex в разделе 1011 * События xforms-next и xforms-previous .

...