Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jsf-2/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jsf 2 如何在关闭时清除p:对话框中的p:消息?_Jsf 2_Primefaces - Fatal编程技术网

Jsf 2 如何在关闭时清除p:对话框中的p:消息?

Jsf 2 如何在关闭时清除p:对话框中的p:消息?,jsf-2,primefaces,Jsf 2,Primefaces,我有一个JSF2.0页面,它使用PrimeFacesp:dialog组件。用户可以在对话框中输入信息,然后单击保存/取消。如果他们有验证错误,则会显示在对话框上。当他们关闭或取消对话框时,我希望任何p:message组件都被“删除”,即,如果用户再次打开p对话框,他们将不会看到旧的验证消息 用例是:用户打开对话框,不填写所有必填字段,单击保存,对话框中显示必填字段错误消息。用户单击“取消”关闭对话框。用户然后单击按钮再次打开对话框。我不希望他们看到以前的验证消息(目前他们可以看到) Ajax在打

我有一个JSF2.0页面,它使用PrimeFacesp:dialog组件。用户可以在对话框中输入信息,然后单击保存/取消。如果他们有验证错误,则会显示在对话框上。当他们关闭或取消对话框时,我希望任何p:message组件都被“删除”,即,如果用户再次打开p对话框,他们将不会看到旧的验证消息


用例是:用户打开对话框,不填写所有必填字段,单击保存,对话框中显示必填字段错误消息。用户单击“取消”关闭对话框。用户然后单击按钮再次打开对话框。我不希望他们看到以前的验证消息(目前他们可以看到)

Ajax在打开对话框组件之前更新它

例如



它不仅会清除消息,还会输入字段值(或至少保留正确的默认值)。

如果我还想清除输入字段值,该怎么办?(这似乎不行)是的。继续阅读Stack Overflow和PrimeFaces论坛上的问题和答案(我不知道)。你将学到很多与你目前的情况没有直接关系的东西,但你可以将这些东西应用到你当前或未来的项目中。另一个原因是可以通过
modal=“true”
重新定位到车身末端。这样,在生成的HTMLDOM树中,它将不再位于表单中。对话框应该有它自己的形式。@BalusC,在我的例子中,primefaces valdidation消息被正确地擦除了,但是当对话框显示时,jsf验证(输入上只有红色边框)继续进行。你知道吗?谢谢。@Rafael:它确实不会清除无效状态,然后前往。
<p:commandButton ... update=":dialog" oncomplete="dialog.open()" />