簡體   English   中英

JQuery datepicker - 如何更改特定開始日期的最大日期?

[英]JQuery datepicker - how to change max date on a specific start date?

我有以下代碼:

$(function() {          
var dates = $( "#from_date, #to_date" ).datepicker({            
defaultDate: "-1w",
dateFormat: 'yy-mm-dd',
            onSelect: function( selectedDate ) {
                if (selectedDate < "2012-03-27" ) {
                    maxDate: new Date(2012, 03 - 1, 27); // it will set minDate from 25 October 2009
                };
                var option = this.id == "from_date" ? "minDate" : "maxDate",
                instance = $( this ).data( "datepicker" ), 
                date = $.datepicker.parseDate(instance.settings.dateFormat || $.datepicker._defaults.dateFormat,selectedDate, instance.settings );
                dates.not( this ).datepicker( "option", option, date );

            }
        });

    });

我需要將maxDate限制為2012-03-27,以防開始日期小於此。

我嘗試了一切....真的很絕望,謝謝,丹尼

好的,我現在看到你正在嘗試使用maxDate。 您正在嘗試在事件處理程序中為datepicker設置選項!

$("#from_date, #to_date").datepicker({
    defaultDate: "-1w",
    dateFormat: 'yy-mm-dd',
    onSelect: function(selectedDate) {
        // begin event handler
        if (selectedDate < "2012-03-27") {
             // you cannot set option of the datepicker like this from
             // an event handler !
             maxDate: new Date(2012, 03 - 1, 27);
        }
        // end of event handler
    }
});

要更改datepicker實例的選項,請使用插件的方法“option”:

$(...).datepicker("option", <optionName>, <newValue>);

現在,我仍然不確定完全理解你想要的日期,但是要在某個日期鎖定另一個日期選擇器,你可以設置minDate maxDate,這樣只有這個日期是可選的:

if (selectedDate < "2012-03-27") {
    var maxDate = new Date(2012, 03 - 1, 27);
    $("#to_date").datepicker("option", 'minDate', maxDate);
    $("#to_date").datepicker("option", 'maxDate', maxDate); 
}          

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM