1

我正在使用 primefaces 日历来创建事件。使用“mindate”参数,我禁用了当天之前的几天。即使结束日期,我也想这样做,禁用开始日期之前的几天。我不知道如何处理这个问题,因为支持 bean 仅在整个表单验证后才获得开始日期。

我需要在 inputText 字段上输入开始日期后立即设置支持 bean。

这里的HTML:

<p:calendar immediate="true" mindate="#{createEventBean.today}" id="startingtime" value="#{createEventBean.current.startingtime}"/>

<p:calendar mindate="#{createEventBean.current.startingtime}" id="endingtime" value="#{createEventBean.current.endingtime}"/>

这里是支持bean的方法:

public Date getToday(){
    return new Date();
}
4

1 回答 1

5

您可以使用<p:ajax>在选择开始日期时更新结束日期。支持选择日期时触发的<p:calendar>ajax 事件。dateSelect

所以,这应该这样做:

<p:calendar value="#{bean.startDate}" mindate="#{bean.today}">
    <p:ajax event="dateSelect" update="endDate" />
</p:calendar>
<p:calendar id="endDate" value="#{bean.endDate}" mindate="#{bean.startDate}" />
于 2015-01-20T07:44:07.823 回答