Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/jsf/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何在h:inputText中限制按键事件期间的字符_Javascript_Jsf - Fatal编程技术网

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" />