inputNumber 中的 minValue 属性在 JSF primefaces 中不起作用?

minValue attribute in inputNumber not working in JSF primefaces?

下面的 inputNumber 声明不接受任何输入,但是当我删除 minValue 属性时,它接受输入。 这里没有做错什么?

代码 xhtml:

<a:column>
  <p:inputNumber id="year"
                 value="#{consomationControleur.myYear}"
                 maxValue="#{now.year + 1900}"
                 minValue="2000"
  >
    <p:ajax event="blur" process="@this"/>
  </p:inputNumber>
</a:column>

java CDI bean

@Getter
@Setter
@Named("consomationControleur")
@ViewScoped

public class ConsomationControleur implements Serializable {
   private int myYear;
   //...
}

jsf 版本 2.2 primefaces 版本 11

我试图删除最大值。 我尝试将 minValue 设置为负值,它有效,但我需要 1990-2022 年。所以我只需要正值。

我要备注一下
minValue="1980" maxValue="#{now.year + 1900}" 它有效,但因为 JS 但是因为 JS 当你写一个值时,你 select 编辑了输入并键入一个数字(比如 2),JS triter 这个值,并且作为最小条件是 1980,自动重新更新输入并放置该字段为最小值 1980。 工作你必须 select 只有第三个数字 (8) 并改变它,一个数字改变一个,这很糟糕,但它是这样工作的。

或者您使用 <f:validateLongRange minimum = "" maximum = "" />

<p:inputNumber value="#{consomationControleur.anneeActuel}" > <f:validateLongRange minimum = "1900" maximum = "#{now.year + 1900}" /> <p:ajax event="blur" update="display2" process="@this"/> </p:inputNumber>