Linconnue55
Linconnue55

Reputation: 187

Restrict inputText value to alphabetic characters only

I need to allow only alphabetic characters [A-Z,a-z] in a PrimeFaces inputText field.

How can I do this?

Upvotes: 4

Views: 19873

Answers (2)

Giovanni Perea
Giovanni Perea

Reputation: 348

If you need to avoid characters in the view (input text) you can user p:keyFilter tag as below

<p:inputText id="apePat" 
            placeholder="Apellido Paterno" 
            value="#{actualizaDatos.user.apePat}" 
            autocomplete="off" 
            label="Apellido Paterno" 
            validatorMessage="El campo apellido paterno es requerido">

            <f:validateRequired/>

            <p:keyFilter regEx="/[a-zA-ZÀ-ú\\s\\' ]+/"/>

</p:inputText>

Upvotes: 3

Matt Handy
Matt Handy

Reputation: 30025

Not specific to Primefaces but to underlying JSF:

You can use a regex validator on your input field:

   <h:inputText value="#{myBean.myText}" >
     <f:validateRegex pattern="[a-zA-Z]+"/>
   </h:inputText>

This will work with p:inputText as well.

Adapt the regular expression to your functional requirements.

Upvotes: 14

Related Questions