使用'Stefan Petre'的DatePicker禁用过去日期

时间:2014-09-23 08:37:48

标签: javascript jquery jquery-ui datepicker

由于一些限制,我必须使用Stefan Petre编写的DatePicker,我需要能够禁用过去的日期,你可以在这里找到他的DatePicker的实现:http://www.eyecon.ro/datepicker/

根据他的说法,我可以禁用日期onRender功能,但显然会禁用所有日期:

var date = new Date();
date.setDate(-1);
onRender : function(){
           return{
                disabled : date < new Date()
           };
        }

您以前使用过此自定义DatePicker库吗?如果是的话,我们非常感谢您的建议。

2 个答案:

答案 0 :(得分:1)

我刚刚遇到这个问题,似乎startDate或minDate对这个特定的日期选择器不起作用。

对于 jQuery UI datepickers,您可以使用“minDate: 0”来停用所有过去的日期。

对于Stefan Petre的日期选择器的分叉版本,您可以使用“startDate: 0”来禁用所有过去的日期。

但是对于这一个,最初的Stefan Petre的日期选择器,他现在似乎没有积极贡献,你可以使用onRender功能,如下所示:

$('.datepicker').datepicker({ //this applies to all elements with the class "datepicker"
    onRender: function (date) {
        return date.valueOf() < now.valueOf() ? 'disabled' : ''; //disables all past dates
    },
    format: "yyyy/mm/dd", //sets format of the date displayed after selecting date
}).on('changeDate', function (ev) {
    $('.datepicker.dropdown-menu').hide(); //closes the datepicker after selecting date
});

答案 1 :(得分:0)

您可以使用以下代码代替OnRender

$(document).ready(function(){
        var now=new Date();
        $('#date').DatePicker({
        flat: true,
        date: '2008-07-31',
        current: '2008-07-31',
        calendars: 1,
        startDate: now,
        starts: 1
    });
});