如何在另一个Datepicker中设置Datepicker中的最小日期?

时间:2015-03-10 13:48:38

标签: jquery jquery-ui date datepicker

我目前正在为我的日期选择器添加验证,并且无法将日期选择器中的最小日期设置为日期选择器中选择的任何内容。即如果选择了12-3-15,那么迄今为止选择器中的最小日期是12-3-15。这是我正在使用的代码:

$("#from").datepicker({
            defaultDate: new Date(),
            minDate: new Date(),
            onSelect: function(dateStr) 
            {
            fromDate = new Date(dateStr);
            }
        });

$('#to').datepicker({
            defaultDate: new Date(),
            minDate: ("#from" + "1D"), (<- HERE)
            onSelect: function(dateStr) {
            toDate = new Date(dateStr);

                // Converts date objects to appropriate strings
                fromDate = ConvertDateToShortDateString(fromDate);
                toDate = ConvertDateToShortDateString(toDate);
        });

有人知道如何实现这个目标吗?

2 个答案:

答案 0 :(得分:4)

请检查这个工作小提琴

JSFiddle

使用optionminDate设置为第二个datepicker

$("#from").datepicker({
        defaultDate: new Date(),
        minDate: new Date(),
        onSelect: function(dateStr) 
        {         
            $("#to").val(dateStr);
            $("#to").datepicker("option",{ minDate: new Date(dateStr)})
        }
    });

答案 1 :(得分:2)

答案很好,但你需要销毁$ to的日期选择器,因为如果不是$ to datepicker仍然是你选择的第一个日期,并删除$ to datepicker中的选项,这对我来说,你不是需要为$ to做其他功能。

$("#from").datepicker({
    defaultDate: new Date(),
    minDate: new Date(),
    onSelect: function(dateStr) 
    {         
        $("#to").datepicker("destroy");
        $("#to").val(dateStr);
        $("#to").datepicker({ minDate: new Date(dateStr)})
    }
});