JSF2 -停止同一字段的多个验证错误(即只能有一个)



给定这个片段在facelet中:

    <h:messages layout="table"></h:messages>
    <br /><br />
    First Name: 
    <h:inputText styleClass="inputText" id="firstName" validatorMessage="#{msg['error.userEdit.firstName']}">
        <f:validateRequired></f:validateRequired>
        <f:validateLength maximum="50"></f:validateLength>
        <f:validateRegex pattern="^[A-Za-z]+$"></f:validateRegex>
    </h:inputText>

当在表单上运行验证时,根据字段的验证规则失败的数量,我在my中打印出0-3条相同的消息。如何将其限制为每个字段一条消息?

为清楚起见,我的错误信息包含了所有的3个错误,并说"名字是必需的,不能超过50个字符,并且必须只有alpha字符。",所以这就是为什么我只希望它打印一次。

<h:message>代替<h:messages>。这样只会显示第一个。

<h:message for="firstName" />

是的,这种方法需要您为每个单独的输入字段指定<h:message>,而不是单个<h:messages>。没有其他的标准方法

应该可以只设置一个正则表达式

你需要使用这个

< f:validateRegex pattern="[A-Za-z]{0,50}" >                         

相关内容

  • 没有找到相关文章

最新更新