问题
I want to restrict p:inputMask
to numbers only, and I tried the proposed solutions from:
- How to restrict an input to numbers only with PrimeFaces inputMask element
But none of them worked. I tried these two ways:
<p:inputMask id="userNo" maxlength="2" mask="9?9999" />
and
<p:inputMask id="userNo" maxlength="2" >
<pe:keyFilter regEx="/[0-9_]/i"/>
</p:inputMask>
回答1:
I think that approach is right but I noticed that you don't put value
attribute on inputMask
.
Do you try to put it on?
Edit: These solutions works:
inputMaskTest.xhtml:
<h3>Input Mask:</h3>
<h:form id="form">
<p:outputLabel value="Input Mask only number " for="userNo1" />
<p:inputMask id="userNo1" maxlength="2" mask="9?9999" value="#{inputMaskView.number}"/>
<p:outputLabel value="Input Mask only Number Primeface Ext " for="userNo2" />
<p:inputMask id="userNo2" maxlength="2" value="#{inputMaskView.number}">
<pe:keyFilter regEx="/[0-9_]/i" />
</p:inputMask>
</h:form>
InputMaskView.java:
@ManagedBean(name = "inputMaskView")
@ViewScoped
public class InputMaskView {
private String number;
public String getNumber() {
return number;
}
public void setNumber(String number) {
this.number = number;
}
}
- see also: http://forum.primefaces.org/viewtopic.php?f=3&t=37665
来源:https://stackoverflow.com/questions/27437146/how-to-restrict-primefaces-inputmask-to-numbers-only