jquery multidatepicker min date disturbs datepickers UI

时间:2017-08-17 04:02:57

标签: jquery datepicker jquery-ui-datepicker jquery-multidatespicker

概念:我正在创建一年的日历。 说 01-01-2017至31-12-2017 问题:当我将分钟日期设置为08-06-2017 时,datepicker会重新排列,并成为日期选择器01-06-2017至31-05- 2018 我需要的是它应该从1 jan 2017开始,以31 dec 2017

结束

js code:

$('#generate_sampling .full-year').multiDatesPicker({
    addDates: dates,
    numberOfMonths: (samplingStatus=="EDIT" ? [3,4] : [6,4]),
    minDate : startDate,
    maxDate : endDate,
    defaultDate :  '01/30/'+(year == '' ? '2017' : year),
}); 

2 个答案:

答案 0 :(得分:0)

希望这有帮助

$('.full-year').multiDatesPicker('destroy');

在设置minDate

之前销毁Datepicker

DEMO

答案 1 :(得分:0)

在这里,我设法停止重新安排日期。我在 beforeShowDay 下添加了一些条件,并评论了我的最小和最大日期参数

$('#generate_sampling .full-year').multiDatesPicker({
        addDates: dates, // array of dates
        numberOfMonths:  [3,4] ,
        /*minDate : startDate,
        maxDate : endDate,*/
        defaultDate :  '01/30/'+(year == '' ? '2017' : year),

        beforeShowDay: function(dateStamp) {
            var className="";
            if(dateStamp < new Date(startDate) || dateStamp > new Date(endDate)){
                className =" ui-datepicker-unselectable ui-state-disabled "
            }
            var title = "Disabled";
            return [true, className ,title]; // title will be displayed as tooltip
        }
});

如果 beforeShowDay 不起作用,请检查您的multidatepickers核心js文件。必须注释以下这一行。取消注释。它会起作用。

this.multiDatesPicker.originalBeforeShowDay = options.beforeShowDay;

谢谢!