我在注册表单中有以下代码。基本上,按钮调用一个动作(一个 Ejb 方法和一个作为实用方法的动作侦听器)。当用户提交注册表时,应该会出现一个 primefaces 对话框,告诉用户正在处理注册。提交表单后,相同的对话框就会消失。这可以通过Primefaces UIBlock来实现;但是,它要求 commandButton 启用 ajax。
我考虑过使用:onstart = 显示一些模式对话框和 onsuccess 或 on complete = 隐藏此对话框(<p:dialog widgetVar="dialog" ...
),但此解决方案需要为 primefaces commandButton 启用 ajax。
关于如何在 PrimeFaces commandButton 中将 ajax 设置为 false 时如何实现这一点的任何线索?
谢谢
<h:form id="form_register">
<p:panel id="panel_register">
<div align="center" style="padding: 5px;">
<p:commandButton id="register" ajax="true"
actionListener="#{mailBean.deliverEmail(newMember.email,newMember.name, newMember.username, newMember.password, newMember.isadmin)}"
action="#{memberController.register}" value="Register"
label="Register">
<f:setPropertyActionListener target="#{requestScope.wait}"
value="#{true}" />
</p:commandButton>
</div>
<p:blockUI block="panel_register" trigger="register">
<h:outputText value="Please wait..." />
<br />
<p:graphicImage value="#{resource['gfx/gif.gif']}" />
</p:blockUI>
编辑:谢谢大家。我误用了命令按钮中的更新属性。现在一切正常。