2012-04-18 2 views
5

У меня есть страница JSF 2.0, в которой используется компонент Primefaces p: dialog. Пользователь может ввести информацию в диалоговом окне и нажать «Сохранить/отменить». Если они имеют ошибку проверки, она отображается в диалоговом окне. Когда они закрывают или отменяют диалог, я хочу, чтобы все компоненты p: message были «уничтожены», то есть, если пользователь снова откроет p диалоговое окно, они не будут видеть старые сообщения проверки.Как стереть p: сообщение из p: dialog on close?

Use case is: user открывает диалоговое окно, не заполняет все обязательные поля, щелкает Сохранить, в диалоговом окне отображаются обязательные сообщения об ошибках поля. Пользователь нажимает кнопку отмены, которая закрывает диалог. Затем пользователь нажимает кнопку, чтобы снова открыть диалог. Я не хочу, чтобы они видели предыдущие сообщения проверки (которые в настоящее время они могут).

ответ

6

Ajax-обновить компонент диалога перед его открытием.

Э.Г.

<p:commandButton ... update=":dialog" oncomplete="dialog.open()" /> 

Он будет не только очищать сообщения, но и вводить значения полей (или, по крайней мере, сохранять их с правильными значениями по умолчанию).

+0

Спасибо, работает как очарование! – BestPractices

+0

Добро пожаловать :) – BalusC

+0

Что делать, если я хочу также очистить значения полей ввода? (это, похоже, не делает этого) – BestPractices

Смежные вопросы