primefaces-3.3.1生日日历

时间:2012-10-07 12:36:28

标签: jsf calendar primefaces

我使用以下XML来获取Birthdate日历:

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

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

enter image description here

有人见过这个吗?

2 个答案:

答案 0 :(得分: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()}"设置为动态调用它。

答案 1 :(得分:2)

更改为 yearRange =“ - 100:-17”