如何在 adf 12c 中的输入文本字段上添加数字屏蔽

How to add number masking on input text field in adf 12c

我想在 adf 12c .jsf 页面的输入文本字段中添加验证。 用户在输入CNIC时应该是"xxxxx-xxxxxxx-x"这种格式,否则输入正确的格式会报错。 这是我的输入字段代码:

<af:inputText value="#{row.bindings.Name.inputValue}" 
    label="#{bindings.TblCertificationView1.hints.Name.label}" 
    required="#{bindings.TblCertificationView1.hints.Name.mandatory}" 
    columns="#{bindings.TblCertificationView1.hints.Name.displayWidth}"
    maximumLength="#{bindings.TblCertificationView1.hints.Name.precision}"
    shortDesc="#{bindings.TblCertificationView1.hints.Name.tooltip}" id="it2">
 <f:validator binding="#{row.bindings.Name.validator}"/>
</af:inputText>

一种方法是使用 validateRegex 标记 (https://www.javatpoint.com/jsf-validateregex)。

用于检查组件的本地值是否与 java.util.regex 包中的正则表达式匹配。

你的情况:

<af:inputText value="#{row.bindings.Name.inputValue}" 
    label="#{bindings.TblCertificationView1.hints.Name.label}" 
    required="#{bindings.TblCertificationView1.hints.Name.mandatory}" 
    columns="#{bindings.TblCertificationView1.hints.Name.displayWidth}"
    maximumLength="#{bindings.TblCertificationView1.hints.Name.precision}"
    shortDesc="#{bindings.TblCertificationView1.hints.Name.tooltip}" id="it2">
 <f:validator binding="#{row.bindings.Name.validator}"/>
 <f:validateRegex pattern="(^[0-9]{5}-[0-9]{7}-[0-9]$)"/>
</af:inputText>