0

我有两个日期选择器,它们如下:

第一个日期选择器:txtDate

HTML:

Date :  
<input type="text" id="txtDate"/>

查询:

$(function() {
    $("#txtDate").datepicker({
        changeMonth : true,
        changeYear : true,
        dateFormat: "yymmdd"
    })
});

第二个日期选择器:dateAvailable

HTML:

Date Available :   
<input type="text" id="dateAvailable" /> 

查询:

var dateAvailable = new Date(document.getElementById('txtDate').value);

$(function(){
    $("#dateAvailable").datepicker({
        changeMonth : true,
        changeYear : true,
        dateFormat: "yymmdd",
        minDate: new Date(dateAvailable)
    })              
});

第二个 Datepicker: dateAvailable不应小于一个 datepicker: txtDate。所以我需要获取在 txtDate 选择的日期,然后将其设置为 dateAvailable 的 minDate,

但这是对我不起作用的代码..如何设置 dateAvailable 的 minDate?

4

2 回答 2

1

给你,JSFIDDLE DEMO,

您需要动态更改另一个日期选择器的值,所做的只是在第一次加载页面时设置第二个日期选择器的最小值。

但是当您更改第一个日期选择器时,您并没有更改第二个的最小值。为此,您需要使用 onClose,并更改最小值。

$(function() {
    $("#txtDate").datepicker({
     changeMonth : true,
     changeYear : true,
     dateFormat: "yymmdd",
        onClose: function(){
            $( "#datepicker" ).datepicker('change',{ 
                minDate: new Date($("#txtDate").datepicker('getDate'))
            });
        }
    })

    $( "#datepicker" ).datepicker({ 
        yearRange: '1999:c+1' ,
        changeYear: true,
        minDate: new Date(1999, 10 - 1, 25),
        maxDate: '+30Y',
    });
});
于 2013-08-16T09:13:40.463 回答
0

您需要更新第二个日期选择器以获得正确的日期。

如果您将第一个日期选择器的值指定为minDate页面加载时第二个日期选择器的值,那么它将没有正确的minDate.

您可以执行以下操作来更新您的秒 datepicker 以获得正确的minDate

$(function() {
    $("#txtDate").datepicker({
        changeMonth : true,
        changeYear : true,
        dateFormat: "yymmdd",
        onClose: function() { 
            // Update the minDate parameter of the other datepicker
             $('#dateAvailable').datepicker('option','minDate',new Date($(this).val()));
        }
    })
});
于 2013-08-16T09:26:25.527 回答