如何在显示之前日期的同时禁用之前的日期?

时间:2013-05-21 12:17:09

标签: jquery datepicker jquery-ui-datepicker

我使用了“minDate : dateToday”和“minDate : 0”,但之后的日期没有显示。

例如,如果我输入今天的日期并在明天检查时,数据库仍然有昨天的日期,但显示的日期将是明天的日期。

我该如何解决这个问题?

使用的代码

$('#startDate,#endDate,#dateEntered').datepicker({
        minDate : dateToday,
        maxDate : "+10Y",
        buttonImage: "static/images/calender.gif",
        buttonImageOnly: true,
        constrainInput: true
    }); 

2 个答案:

答案 0 :(得分:2)

我遇到了同样的问题。我必须使用datepicker的beforeShowDay option并删除mindDate选项。

初始化如下:

$('#startDate,#endDate,#dateEntered').datepicker({
        maxDate : "+10Y",
        buttonImage: "static/images/calender.gif",
        buttonImageOnly: true,
        constrainInput: true,
        beforeShowDay: function(date) { 

           if (date != previousDate && date < dateToday) { //you will need to save the previous date in a variable
               return [false, "", "Date Unavailable"];
           }               
           return [true, ""];
        }
    }); 

答案 1 :(得分:1)

工作演示--> http://jsfiddle.net/f6qJF/1/

$('#date').datepicker({
    maxDate : "+10Y",
    buttonImage: "static/images/calender.gif",
    buttonImageOnly: true,
    constrainInput: true,
    beforeShowDay: check
});

function check(date) {
    if (date > new Date()) return [true];
    else return [false];
}