【问题标题】:Disable past dates in <p:calendar>在 <p:calendar> 中禁用过去的日期
【发布时间】:2015-08-09 19:00:43
【问题描述】:

如何在&lt;p:calendar&gt; 中禁用过去的日期?

<p:calendar value="#{userData.datein}" />

【问题讨论】:

  • 今天之前的任何一天都被认为是过去的一天。因此,“过去的日期”到底是什么意思。您真的要禁用今天日期之前的任何日期吗?
  • 是的,我不希望用户选择今天之前的任何日期。
  • 换句话说,你想设置一个最小日期?如果有可用的属性,您是否检查了(标签)文档?
  • 是的,我已经看到了最短日期,但是如何将属性设置为当前日期值?
  • 嗯?如果您已经看过它,为什么不告诉它和/或明确询问 [java] 用户如何将 Java Date 变量设置为当前日期..?

标签: jsf jsf-2 primefaces calendar


【解决方案1】:

我这样用过,效果很好

<p:calendar id="datein" pattern="MM/dd/yyyy" value="#{userData.datein}" mindate="today"/>    

Javascript 代码

<script>
today = Date();
</script>        

【讨论】:

  • 用户可以输入以前的日期。如何限制他写上一个日期。
【解决方案2】:

你可以这样做。

XHTML-

<p:calendar value="#{viewBean.dateSelected}" mindate="#{viewBean.todayDate}" />

ViewBean-

private Date todayDate = new Date();

public Date getTodayDate() {
    return todayDate;
}

【讨论】:

  • 用户可以输入以前的日期。如何限制他写上一个日期。
  • 我相信在这种情况下,它一定不允许在通知之前输入日期或在提交表单时抛出错误消息,但现在我不确定。你厌倦了吗?如果它不起作用,您可以编写一个自定义验证器来为您完成。
猜你喜欢
  • 1970-01-01
  • 2013-12-05
  • 2013-05-09
  • 1970-01-01
  • 2021-04-15
  • 1970-01-01
  • 1970-01-01
  • 2016-04-14
  • 1970-01-01
相关资源
最近更新 更多