Javascript 如何在h:inputText中限制按键事件期间的字符
我需要一个只接受数字的输入组件,如Javascript 如何在h:inputText中限制按键事件期间的字符,javascript,jsf,Javascript,Jsf,我需要一个只接受数字的输入组件,如[0-9]所示。我通过服务器端转换/验证实现了这一点: <h:inputText ... converter="javax.faces.Integer" /> 试试这个 <h:inputText id="presentReading" styleClass="labelfont" label="Present Reading" converter="javax.faces.Integer"value="#{FuelFilling1.pr
[0-9]
所示。我通过服务器端转换/验证实现了这一点:
<h:inputText ... converter="javax.faces.Integer" />
试试这个
<h:inputText id="presentReading" styleClass="labelfont" label="Present Reading" converter="javax.faces.Integer"value="#{FuelFilling1.presentReading}" maxlength="10">
<f:validateLongRange minimum="1" maximum="10"/>
</h:inputText>
或者,您可以使用JQuery或Javascript在客户端的keypress上进行验证。您可以使用Jquery吗?我建议您坚持使用jsf验证
<f:convertNumber integerOnly="true" type="number" />
如果不想将表单提交给get响应,可以使用ajax进行实时验证。使用javascript/jQuery进行按键验证是可以做到的,但这是一件痛苦的事情,除非你有很好的理由这样做。这不完全是JSF的问题,只是javascript的问题。在这种情况下,这个问题是一个骗局:
<f:convertNumber integerOnly="true" type="number" />