使用PrimeFaces验证

时间:2015-02-26 21:31:35

标签: jsf primefaces

我有一个名为emai的字段的表单有一个非常简单的验证required = true。现在,当我点击按钮时,它会执行AJAX回调。我想知道无论如何在客户端进行验证而不调用服务器?

<h:form class="lfrm" id="lfrm">
    <p:panel id="lpanel" header="Login">
        <p:messages id="lmessages" showDetail="true" autoUpdate="true"/>

        <h:panelGrid id="lgrid" columns="2" cellpadding="5">
            <h:outputText value="Email: *" />

            <p:inputText styleClass="email"
                         id="lemail"
                         value="#{Registration.user.email}"
                         required="true" requiredMessage="Email is required">
            </p:inputText>

            <p:commandButton process="lemail"
                             value="Sign in"
                             immediate="true"
                             validateClient="true"/>
    </p:panel>
</h:form>

1 个答案:

答案 0 :(得分:6)

在web.xml中添加以下配置

<context-param>
    <param-name>primefaces.CLIENT_SIDE_VALIDATION</param-name>
    <param-value>true</param-value>
</context-param>

此外,如果将ajax设置为false,则会发送组件所在的当前表单。即包含p:commandButton的表单。如果使用了ajax,请选择要处理的内容。使用以下标记将字段处理为命令按钮

<p:commandButton process="@form" ...... />