我试图使用#{facesContext.validationFailed}来了解验证是否失败,以及是否显示对话框。
我构建了一个很小的项目来测试它,但是
ReferenceError:未定义facesContext
在我的firebug中,无论验证失败与否,都不会显示对话框。
这是我的密码:
<h:form>
<p:messages id="messages" />
<h:outputLabel for="test" value="Test : *" />
<p:inputText value="#{newBusinessCtrl.testStr}" required="true" id="test"/>
<p:message for="test" />
<p:commandButton value="Save" onclick="if (!facesContext.validationFailed)testDlg.show();"/>
<p:confirmDialog message="test Msg"
header="Success" severity="alert"
widgetVar="testDlg">
<h:outputText value="input success!"/>
</p:confirmDialog>
</h:form>有人知道为什么吗?提前谢谢。
发布于 2013-12-27 13:06:37
facesContext.validationFailed需要在EL表达式中,即#{facesContext.validationFailed};否则它就是javascript变量。
但是,我认为这仍然不能给您提供想要的效果,因为onclick脚本将在提交表单之前执行。
https://stackoverflow.com/questions/20794184
复制相似问题