【问题标题】:MaterializeCSS disable specific datesMaterializeCSS 禁用特定日期
【发布时间】:2023-04-04 13:07:01
【问题描述】:

我正在尝试在 MaterializeCSS 中禁用周末(周六和周日)和某些日期(如“2018-05-11”、“2018-05-21”、“2018-05-24”等) datepicker,但我想每年禁用这些日期。我可以使用

禁用日期和日期
$('.datepicker').pickadate({
       disable: [
            1, 7, new Date(2018,5,11), {from: [2018,5,11], to: [2018,5,22]}, {from: [2018,8,5], to: [2018,8,17]}
       ]
});

所以我想知道是否有办法让它每年重复。

【问题讨论】:

    标签: date datepicker materialize


    【解决方案1】:

    materializecss pickers

    您可以在初始化日期选择器时使用disableDayFn 选项自定义禁用哪些日期。此 CodePen 显示了 disableDayFn 选项用于禁用周末、每年 5 月 11 日、21 日和 24 日的示例。

    【讨论】:

    • 这就是我所做的,但我想知道是否有一种方法可以永远每年重复它们,而无需在数组中指定每一年
    • 哎呀!分叉 CodePen 后我忘记获取新 URL。我已经更新了我的答案。 Correct CodePen
    • 更正了原始代码盘 [link] (codepen.io/anon/pen/MqbXwE) 中的语法问题
    【解决方案2】:
    $('.disablePast').pickadate({
            selectMonths: true, // Creates a dropdown to control month
            selectYears: 105, // Creates a dropdown of 15 years to control year,
            today: 'Today',
            clear: 'Clear',
            close: 'Ok',
            format : 'dd/mm/yyyy',
            closeOnSelect: true,
            min : true
        });
        $('.datepicker').pickadate({
            selectMonths: true, // Creates a dropdown to control month
            selectYears: 105, // Creates a dropdown of 15 years to control year,
            today: 'Today',
            clear: 'Clear',
            close: 'Ok',
            format : 'dd/mm/yyyy',
            closeOnSelect: true,
    
            onSet: function(context) {
                var id = this.$node[0].id;
                var d = new Date(context.select);
                var dd = d.getDate();
                var mm = d.getMonth()+1; //January is 0!
    
                var yyyy = '';
                yyyy = new Date().getFullYear();
                year1=yyyy;
                month1=mm;
                if(dd<10){
                    dd='0'+dd;
                } 
                if(mm<10){
                    mm='0'+mm;
                } 
                var df = mm+'/'+dd+'/'+yyyy;
                var msec = Date.parse(df);
                var d1 = new Date();
                var d2 = new Date(msec);
                var timeDiff = d2.getTime() - d1.getTime();
                var DaysDiff = timeDiff / (1000 * 3600 * 24);
                var dff = '';
                var dft = '';
                if(DaysDiff >= 0){
                    dff = dd+'/'+mm+'/'+yyyy;
                } else{
                    yyyy = yyyy + 1;
                    dff = dd+'/'+mm+'/'+yyyy;
                }
    
    
    
    
                 if(month1==1) 
                 {
                    year1 = year1 - 1;
    
    
                    month1 = 12;
    
                }
                else if(month1<=10)
                {
                    month1=month1-1;
                    month1='0'+month1;
                }
                else
                {
                    month1=month1-1;
                }
                dft = dd+'/'+month1+'/'+year1;
    
    
    
    
    
    
    
    
                /*if(df > 0){
                    dft = dd+'/'+mm+'/'+yyyy;
                }
                // if(mm = 01) {
                //     mm = 12;
                //     yyyy = yyyy - 1;
                //     dft = dd+'/'+mm+'/'+yyyy;
                // }
                 else{
                    yyyy = yyyy + 1;
                    mm = mm - 1;
                    dft = dd+'/'+mm+'/'+yyyy;
                }*/
                 console.log(dft);
                if(id == 'dob')
                    $('#dob_rem_on').val(dff);
                if(id == 'aniv_date')
                    $('#aniv_rem_on').val(dff);
                if(id == 'passport_ren')
                    $('#pass_rem_on').val(dft);
                if(id == 'insurance_ren')
                    $('#insurance_rem_on').val(dft);
                if(id == 'life_insurance_ren')
                    $('#life_insurance_rem_on').val(dft);
                Materialize.updateTextFields();
            }    
    });
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-07-16
      • 2017-07-31
      • 1970-01-01
      • 1970-01-01
      • 2012-04-02
      • 2010-10-15
      • 2013-12-05
      相关资源
      最近更新 更多