Html 如何允许用户在JSF中输入数字(+;/-)和1位小数<;h:inputText onkeypress="&引用&燃气轮机;

Html 如何允许用户在JSF中输入数字(+;/-)和1位小数<;h:inputText onkeypress="&引用&燃气轮机;,html,validation,jsf,Html,Validation,Jsf,我有一个标签,我只想允许输入不超过1位小数的数字 <h:inputText value="#{bean.someNumber}" size="6" styleClass="some-style" onkeypress="if(event.which &lt; 48 || event.which &gt; 57) return false;" pt:placeholder="0.0"> </h:inputText> 这只允许数字,但我不能让它只

我有一个
标签,我只想允许输入不超过1位小数的数字

<h:inputText value="#{bean.someNumber}"
  size="6" styleClass="some-style"
  onkeypress="if(event.which &lt; 48 || event.which &gt; 57) return false;"
  pt:placeholder="0.0">
</h:inputText>
这只允许数字,但我不能让它只允许1位小数

<h:inputText value="#{bean.someNumber}"
  size="6" styleClass="some-style"
  onkeypress="if(event.which &lt; 48 || event.which &gt; 57) return false;"
  pt:placeholder="0.0">
</h:inputText>

我尝试将
(event.which==190)
添加到
onkeypress
属性,但无法使其工作。(190是
键)

注意:这是试图限制用户可以在输入字段中输入的内容,而不是验证已经起作用的服务器端

任何帮助都将不胜感激


更新 我试图用
pt:oninput
更改
onkeypress
,如下代码所示。它只允许数字和1位小数,但不允许将
-
符号作为负数的第一个字符


pt:oninput=“this.value=this.value.replace(/[^0-9.]/g,”).replace(/(\..*)\./g,$1');“

可能与Bewhare重复,您应该将inout值绑定到十进制类型的bean属性和/或添加验证器以安全地限制输入服务器端。是否想过使用
掩码查看。我希望有帮助you@fuggerjaki61这很有帮助。更好的解决方案。