Проверка вкладки Primefaces с динамической вкладкой

У меня есть p: tabview с динамическим номером вкладки на основе списка и атрибута «dynamic = true».

    <p:tabView id="customer-master-data-tab-view" value="#{data.customers}" var="customer" dynamic="true">

Каждая вкладка имеет несколько обязательных полей ввода с p:message для каждого из них. Теперь, когда я отправляю, проверка выполняется только на текущей активной вкладке. Если я изменю на "dynamic=false", все будет работать нормально, но это плохо повлияет на производительность, так как у нас много данных на этой странице.

Есть ли способ проверить каждую вкладку вкладки с помощью «dynamic = true»?


person nguyen anh    schedule 23.07.2018    source источник


Ответы (1)


Короткий ответ: НЕ использовать пользовательский интерфейс для проверки с использованием dynamic="true".

Допустим, у вас есть 4 вкладки с dynamic="true" только первая вкладка загружена через Ajax, а остальные 3 вкладки до тех пор, пока пользователь не нажмет на них, не были загружены в дерево JSF, поэтому их НЕТ возможности проверить. Если вы хотите использовать эту парадигму, я предлагаю вам иметь проверку на стороне сервера, которая проверяет все обязательные поля при отправке и выдает ошибку из вашего вспомогательного компонента, сообщая пользователю, что у него есть больше вкладок, которые они должны заполнить.

person Melloware    schedule 23.07.2018