JqueryUi DatePicker - 禁用不同月份的天数

时间:2017-11-22 17:31:47

标签: javascript jquery-ui datepicker

我想显示启用了几天的日历,我的问题是,如果日期在不同的月份,只能在第一个月开始工作 example

12月的第1天和第2天也必须启用。

/*arrayDaysToshow is my array with the dates to show in calendar*/
$('#schedulingCalendar').datepicker({
                    numberOfMonths: 2,
                    dateFormat: 'dd/mm/yy',
                    beforeShowDay: function(date){
                        var string = jQuery.datepicker.formatDate('d-m-yy', date);
                        return [ $.inArray(string, arrayDaysToshow) >= 0 ]
                    },
                    onSelect: function(){
                        debugger;
                        $("#panelCalendar").animate({'height': '150px'}, 100);
                    }
                });

jsfiddle exemple

1 个答案:

答案 0 :(得分:0)

你在jsfiddle的代码实际上是有效的,问题实际上只是12月初的日期没有领先的零。因此,最快的解决方案是将领先0关闭。

工作小提琴: https://jsfiddle.net/b73bmn3e/6/

基本上,

而不是:

var arrayDaysToshow = ["30-11-2017", "01-12-2017", "02-12-2017"];

这样做:

var arrayDaysToshow = ["30-11-2017", "1-12-2017", "2-12-2017"];

或者向beforeShowDay处理程序添加一些代码,以处理日期的月份和日期部分中是否存在前导零。现在你知道它是什么,它真的取决于你如何处理这个问题:)

干杯