毕竟,对不起我的英语。 我有一个显示modalPanel的问题。 如果表单的验证是正确的,我想显示一个modalPanel,如果验证失败则不显示它。
<h:form>
<rich:calendar id="date" datePattern="dd-MM-yyyy"
value="#{Bean.startDate}" required="true"/>
<a4j:commandButton value="Accept" action="#{Bean.Action}"
onclick="if(#{empty facesContext.maximumSeverity}) #{rich:component('popUp')}.show();" />
</form>
maximumSeverity在这里不起作用,因为第一次加载页面时,maximumSeverity为空。
是否可以调用JSF的生命周期验证表单是否正确?
谢谢!
答案 0 :(得分:3)
onclick
在调用操作之前运行。您需要oncomplete
代替。
如果您正在使用JSF 2.0,那么使用FacesContext#isValidationFailed()
会更好,因为正常的INFO消息也会计入严重程度。
<a4j:commandButton value="Accept" action="#{Bean.Action}"
oncomplete="if(#{not facesContext.validationFailed}) #{rich:component('popUp')}.show();" />