【问题标题】:How can I extend PrimeFaces datepicker js for custom year range?如何为自定义年份范围扩展 PrimeFaces datepicker js?
【发布时间】:2016-07-04 05:06:38
【问题描述】:

我的问题是日期选择器中选择的年份范围是加减 20 年,但根据我的需要,我希望年份范围是 currentYear-150 和 currentYear+150,currentYear 是 2559,我使用 PrimeFaces此项目的 UI 框架。

为了解决这个问题,我写了这段代码

$.extend($.datepicker._defaults, {
         options:{
             yearRange : "2409:2559"
         }
});

在 jquery.ui.datepicker.ext.be.js 中(这是 BE 的 datepicker 扩展,因为我不需要创建新的 js 文件)

但它不起作用,我现在该怎么办?

提前谢谢你。

【问题讨论】:

    标签: javascript primefaces datepicker


    【解决方案1】:

    只需使用 primefaces 的<p:calendar /> 组件:

    <p:calendar yearRange="yourRange">
    

    【讨论】:

    • 我有很多关于数千个文件的 p:calendar 标签,所以如果我真的像你说的那样,很难维护我的项目。任何带有自定义日历(扩展 JS)的解决方案?
    【解决方案2】:

    现在,我已经解决了这个问题,方法是在一个新文件中扩展 Calendar 类并像这样编写它的构造函数

    public CustomCalendar() {
            //  150 Years Calendar 
            Calendar calendar=Calendar.getInstance();
            int budhhYear=calendar.get(Calendar.YEAR)+543;
            int minYearRange=budhhYear-150;
            int maxYearRange=budhhYear+150;
            this.setYearRange(minYearRange+":"+maxYearRange);
    }
    

    感谢您的帮助

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-06-09
      • 2017-09-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-08-21
      相关资源
      最近更新 更多