2

我正在使用以下 XML 来获取生日日历:

<p:calendar pattern="MM-dd-yyyy" value="#{registration.birthDate}" 
    navigator="true" required="true" label="Birth Date" 
    id="birthDateCal" yearRange="c-100:c-17" />

日历虽然有一些问题。当我打开日历时,似乎年份会以一种有趣的方式发生变化:

在此处输入图像描述

有人见过这个吗?

4

2 回答 2

3

更改为yearRange="-100:-17"

于 2013-10-09T13:12:40.397 回答
2

好吧,这似乎已经是 Primefaces 中列出的一个错误。

http://code.google.com/p/primefaces/issues/detail?id=2737

它被标记为不会修复,原因是它是 jQuery UI 日历组件的一个潜在错误,与 Primefaces 无关。

下面的讨论在这里更详细地讨论了 jQuery 端的这个问题。

http://forum.jquery.com/topic/datepicker-yearrange-bug

本质上 yearRange 属性并不像人们想象的那样工作。它将设置年份范围不是今天的日期,而是当前选择的日期作为日历组件的呈现日期。

编辑:

解决此问题的一种可能方法是编写一个算法,该算法根据托管 bean 方法确定动态 yearRange,并基于今天日期和生日之间的差异。您可以设置yearRange="#{managedBean.dynamicYearRange()}"为动态调用它。

于 2012-10-07T13:54:18.137 回答