如何在<p:calendar>中禁用过去和未来的日期?



我需要禁用当前日期的所有过去日期,并在Primefaces的<p:calendar>组件中仅提供当天的三个即将到来的日期。怎么做?

您可以使用<p:calendar>组件的mindatemaxdate属性。例如:

<p:calendar mindate="#{dateBean.today}" maxdate="#{dateBean.todayPlusThree}" />

dateBean bean 中,您将(至少)有两个内容类似于以下内容的 getter:

public Date getToday() {
   Calendar c = Calendar.getInstance(); 
   return c.getTime();
}
public Date getTodayPlusThree() {
   Calendar c = Calendar.getInstance(); 
   c.add(Calendar.DATE, 3);
   return c.getTime();
}

你可以按照合作伙伴的说法使用maxdate和mindate。

<p:calendar id="inputDataNaixement" maxdate="#{datesController.today}"></p:calendar>

并将一个带有今天日期的变量添加到控制器(托管Bean)中以在p:calendar中使用它

public Date today;
public Date getToday() {
    Calendar c = Calendar.getInstance(); 
       return c.getTime();
}
public void setToday(Date today) {
    this.today = today;
}

相关内容

  • 没有找到相关文章

最新更新