【问题标题】:h:inputText allow only decimal digitsh:inputText 只允许十进制数字
【发布时间】:2019-04-22 20:59:40
【问题描述】:

我需要使用 onkeypress 事件限制 inputtext 以仅允许数字和小数。我可以限制数字,但不允许点值。

<h:inputText value="#{dimStackLine.max}"
  onkeypress="if( (event.which &lt; 48 || event.which &gt; 57) ) return false;">
  <p:ajax event="change" process="@this"></p:ajax>
  <f:convertNumber pattern="####0.00000" />
</h:inputText>

【问题讨论】:

  • 这是一个普通的 jsf inputText,与 PrimeFaces 无关
  • 是的,只是简单的 jsf
  • 它甚至可以归结为纯 HTML 和 JavaScript

标签: javascript html jsf


【解决方案1】:

您的onkeypress 阻止输入小数点.,因为事件键码为46,不在48 &lt;= code &lt;= 57 的允许范围内。您必须另外允许代码 46:

<h:inputText value="#{dimStackLine.max}"
  onkeypress="if( (event.which &lt; 48 || event.which &gt; 57) &amp;&amp; event.which != 46 ) return false;">
  <p:ajax event="change" process="@this"></p:ajax>
  <f:convertNumber pattern="####0.00000" />
</h:inputText>

【讨论】:

    猜你喜欢
    • 2012-09-05
    • 1970-01-01
    • 2013-12-19
    • 1970-01-01
    • 1970-01-01
    • 2015-06-27
    • 1970-01-01
    • 2016-01-10
    • 2023-03-21
    相关资源
    最近更新 更多