无法在JavaScript中选择日期

时间:2014-10-20 11:44:18

标签: javascript jquery calendar

我正在使用此代码,但无法在datepicker中选择任何日期。为什么?当我改变月份时,我可以选择日期。我使用disableFunc在日历中禁用了接下来的3天和星期日。当我删除disableFunc时,我可以选择日期。任何解决方案?

Calendar.setup({
        inputField : '_dob',
        ifFormat : '%m/%e/%y',
        button : '_dob_trig',
        align : 'Bl',
        singleClick : true,
        disableFunc: function(date)
        {
            var first_day = new Date();
            var second_day= new Date();
            var third_day= new Date();

            first_day.setDate(first_day.getDate());
            if(first_day.getDay()===0)
            {
                 first_day.setDate(first_day.getDate()+1);
            }

            second_day.setDate(first_day.getDate()+1);
            if(second_day.getDay()===0)
            {
                second_day.setDate(first_day.getDate()+2);
            }

            third_day.setDate(second_day.getDate()+1);
            if(third_day.getDay()===0)
            {
                third_day.setDate(second_day.getDate()+2);
            }


            var flag1 = first_day.getDate()===date.getDate() && first_day.getMonth()===date.getMonth() && first_day.getYear()===date.getYear();
            var flag2 = second_day.getDate()===date.getDate() && second_day.getMonth()===date.getMonth() && second_day.getYear()===date.getYear();
            var flag3 = third_day.getDate()===date.getDate() && third_day.getMonth()===date.getMonth() && third_day.getYear()===date.getYear();

            if(date.getDay() === 0 || flag1 || flag2 || flag3)
            {  return true; }

        }
    });

2 个答案:

答案 0 :(得分:0)

我认为这个答案可能对您有所帮助。建议避免使用==或===

Compare two dates with JavaScript

答案 1 :(得分:0)

得到解决方案 -

如果禁用当前日期,则只会出现此问题。我试图从禁用日期中删除当前日期,它工作正常。

如果您仍想要停用当前日期,请访问此链接并按照说明操作。

在dynarch弹出日历中禁用当前日期