【问题标题】:Datepicker to select only sundays in javascriptDatepicker 仅在 JavaScript 中选择星期天
【发布时间】:2017-07-13 13:46:14
【问题描述】:

下面是我的代码 - 我需要限制用户在日期选择器中只选择星期天,其余天应该是灰色的。所以日期选择器应该只显示星期天。

请帮助我。下面的代码运行良好,默认日期为从今天开始的 4 周,如果可能,用户可以更改它。

<script type="text/javascript">
        var j$ = jQuery.noConflict();
        var d = new Date();
        d.setDate( d.getDate()+28);
        var fromDateStart = new Date( d );
   
    
    var d = new Date();
        d.setDate( d.getDate()+29);
            var toDateStart = new Date( d );

        
        j$('.fromdatepickerctl').datepicker({
            startDate: getTodayDate()

                

        }).on("changeDate", function(e) {
            var fromDate = document.getElementById( e.target.id ).value;
            console.log('----> fromDate:  '+fromDate);
            var d = new Date( Date.parse(fromDate) );
            d = d.setDate( d.getDate()+28);
            j$('.todatepickerctl').datepicker('setDate', new Date(d) );
        });
   

        j$('.todatepickerctl').datepicker({
            startDate: getTodayDate()
        }).on("changeDate", function(e){
            var fromDateStr = j$(".fromdatepickerctl").val();
            var toDateStr = document.getElementById( e.target.id ).value;
            var parsedFromDate = new Date( Date.parse( fromDateStr ) );
            var parsedToDate = new Date( Date.parse(toDateStr ) );
            if( parsedFromDate > parsedToDate ){
                alert('To Date can not be less than From Date.');
                document.getElementById( e.target.id ).value = '';
                return false;
            }
        })
        
        j$('.fromdatepickerctl').datepicker('update', fromDateStart );
        j$('.todatepickerctl').datepicker('update', toDateStart );

    
        
        function getTodayDate(){
            var today = new Date();
            var dd = today.getDate();
            var mm = today.getMonth()+1; //January is 0!
            var yyyy = today.getFullYear();
            
            if(dd<10) {
                dd = '0'+dd
            } 
            
            if(mm<10) {
                mm = '0'+mm
            } 
            
            today = mm + '/' + dd + '/' + yyyy;
            //document.write(today);
            return today;
        }
    </script>

【问题讨论】:

  • 如果这段代码运行良好,你需要什么帮助?有什么问题?
  • 请修复 sn-p 以使其实际工作(现在缺少 jQuery)。另外:尚不完全清楚您的问题是什么。
  • 您使用的是哪个日期选择器?

标签: javascript jquery datepicker visualforce


【解决方案1】:

我认为这与您面临的问题相同。 这仅在 datepicker 中启用 Sunday。

jquery ui date picker limit to Sundays

 $(function(){


$("#thedate").datepicker({
    dateFormat: 'dd-mm-yy',
    minDate: 1,
    beforeShowDay: enableSUNDAYS
});
// Custom function to enable SUNDAY only in jquery calender
function enableSUNDAYS(date) {
    var day = date.getDay();
    return [(day == 0), ''];
}

});

【讨论】:

  • 没有出现 OP 正在使用 jQueryUI datepicker
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-04-17
  • 2022-11-12
  • 2021-03-03
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多