使用f:validateRegex和p:inputMask在一起

时间:2012-01-06 10:10:25

标签: validation jsf primefaces

我正在尝试对我的时间输入文本进行正则表达式检查,而且我正在尝试屏蔽输入。我不知道这两个代码是否可以同时完成:

<p:inputMask mask="99:99" size="5" maxlength="5" required="true" requiredMessage="#{account_req_txt}" value="#{user.accountNo}">
     <f:validateRegex pattern="[01]?[0-9]|2[0-3]):[0-5][0-9]"/>
     <p:ajax event="blur" update="sysMsg" />
</p:inputMask>

我得到“必须是由一个或多个数字组成的数字。”错误。上面的代码出了什么问题?

1 个答案:

答案 0 :(得分:4)

#{user.accountNo}一次代表的“帐号”究竟是多少?那部分令人困惑。无论如何,该错误表明accountNo 实际上 Number IntegerLong等,而不是String }。

也许您打算将其绑定到#{user.time}或其他内容。至少,该值必须绑定到String,否则您需要创建Converter以将String 99:99表示形式转换为9999中的数字类型1}}表示。