Как реализовать кнопку сброса формы в JSF, когда у вас есть PPR и валидаторы? - PullRequest
3 голосов
/ 08 марта 2011

My <tr:form> содержит некоторые поля с валидаторами, включая <tr:inputDate>, чей валидатор встроен. У меня также есть некоторые AJAX / PPR с атрибутами partialTrigger, где, скажем, выбор одного поля со списком зависит от выбора более раннего поля со списком, ввод чего-то в одном поле отключает другое поле и т. Д.

Мне нужна кнопка очистки / сброса в этой форме, которая выполняет ожидаемые действия: удаляет все записи формы, устанавливает значения по умолчанию и т. Д.

<tr:resetButton> явно бесполезен. Как только происходит даже один PPR, кнопка абсолютно ничего не делает. OTOH, <tr:commandButton text="Clear" action="#{myBean.clear}" /> рассматривается как отправка JSF, поэтому проверка происходит, то есть, если в форме есть хотя бы одно поле, в котором пользователь ввел недопустимые данные, рядом с этим полем появляется сообщение об ошибке, и форма не очищается.

Какая у меня альтернатива? Есть ли способ обойти жизненный цикл и отправить без проверки для этой кнопки? Я бы перенес свою валидацию на бэк-бин, но я не могу сделать это для <tr:inputDate>

1 Ответ

0 голосов
/ 08 марта 2011

это работает в моем случае:

<tr:commandButton text="reset" onclick="javascript:document.frmMain.reset();"
immediate="true" action="#{myBean.clear}"></tr:commandButton>

, но не в том случае, если я установил частичную = "true"Привет

...