1

目前我有一个<h:inputText>

<h:outputLabel value="#{locale.nroEmployees}:"/>
<h:inputText value="#{companyEditBean.companyEmployeesAmount}"
          disabled="#{not companyEditBean.editingAllowed}">
</h:inputText>                      

我怎样才能实现,用户只能在输入字段中输入数字?

4

2 回答 2

2

您可以在之后对其进行过滤以仅接受数字,或执行类似以下操作:

<h:inputText value="#{companyEditBean.companyEmployeesAmount}"
      disabled="#{not companyEditBean.editingAllowed}"
      onkeypress="if(event.which &lt; 48 || event.which &gt; 57) return false;"/>
于 2012-07-05T20:54:00.947 回答
0

作为替代方法,您可以使用 primeface 来实现此目的:

<h:form>
<h:panelGrid columns="2">   
        <h:outputText value="Number Input"/>   
        <h:inputText id="txt_" />   
</h:panelGrid> 
<p:keyFilter for="txt_" mask="num" /> 
</h:form>

或者,使用 primeface 扩展,您可以执行此操作(假设您添加了所需的 jar 并将扩展命名空间定义为 pe)

<p:inputText id="txt_" required="false" label=""
        value="#{beanclass.blablamethod}" maxlength="10">
        <f:validateLength minimum="10" for="txt_" />
        <pe:keyFilter regEx="/[\d\-]/"></pe:keyFilter>
</p:inputText>
于 2016-09-05T12:02:49.863 回答