我需要一个输入组件只接受数字,因为在[0-9]
。我已经通过服务器端转换/验证实现了这一点:
<h:inputText ... converter="javax.faces.Integer" />
但是,它仍然允许在UI中输入其他字符。如何在keypress
事件期间防止发生这种情况?
<h:inputText ... converter="javax.faces.Integer" onkeypress="...help?" />
发布于 2013-04-05 19:01:29
尝尝这个
<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在客户端的按键时进行验证。你可以使用Jquery吗?
发布于 2013-04-05 23:08:06
我建议坚持使用jsf验证。
<f:convertNumber integerOnly="true" type="number" />
如果不想将表单提交给get响应,可以使用ajax进行实时验证。使用javascript/jQuery进行按键验证是可以做到的,但除非你有很好的理由这样做,否则这是一件痛苦的事情。
https://stackoverflow.com/questions/15832128
复制相似问题