2013-02-01 113 views
6

我有jQuery日期選取器設置和工作,但想要設置minDate和maxDate選項的幫助。我目前的代碼在下面(沒有這些選項)。我如何將defaultDate設置爲3天前,並將maxDate設置爲defaultDate後的28天?jQuery DatePicker最小最大日期

var expdisp = $("#expdisp").attr("value"); 

$("#expirydate").datepicker({ 
    showOn: "button", 
    buttonImage: "images/calendar.gif", 
    buttonImageOnly: true, 
    dateFormat: "dd/mm/yy", 
    defaultDate: expdisp, 
    showOtherMonths: true, 
    selectOtherMonths: true, 
    changeMonth: true, 
    changeYear: true, 
}); 

回答

12
$(function() { 

    $("#datepicker").datepicker({ 
     changeYear: true, 
     minDate: '-3M', 
     maxDate: '+28D', 
    }); 
}); 

JSFiddle Demo

UPDATE

可以計算之旅最多和默認的日期閔有效日期,然後將其指定到日期選擇器。

var expdisp = $("#expdisp").attr("value"); 

$("#expirydate").datepicker({ 
    showOn: "button", 
    buttonImage: "images/calendar.gif", 
    buttonImageOnly: true, 
    dateFormat: "dd/mm/yy", 
    defaultDate: expdisp, 
    showOtherMonths: true, 
    selectOtherMonths: true, 
    changeMonth: true, 
    changeYear: true, 

    minDate: '-3M', 
    maxDate: '+28D', 
}); 

Update Demo

+1

這是從'今日'計算的,而不是在'defaultDate'中設置的值 – Rob

+0

@Rob - 查找更新的演示 – MuhammadHani

+0

感謝您的支持,它仍在計算今天的最小/最大值。我現在已經對它進行了排序 - 我正在計算PHP中的值,然後在啓動datePicker時傳遞它們。 – Rob

0

你可以嘗試:

var expdisp = $("#expdisp").attr("value"); 

$("#expirydate").datepicker({ 
    showOn: "button", 
    buttonImage: "images/calendar.gif", 
    buttonImageOnly: true, 
    dateFormat: "dd/mm/yy", 
    defaultDate: expdisp, 
    showOtherMonths: true, 
    selectOtherMonths: true, 
    changeMonth: true, 
    changeYear: true, 

    minDate: -3M, 
    maxDate: +28D 
}); 
+0

我曾嘗試這一點,但值從「今天」計算的,而不是無論是在「defaultDate」 – Rob

+0

Ooppps。這個如何:http://stackoverflow.com/questions/7395771/jquery-ui-datepicker-maxdate只需將您的日期傳遞給該函數,並在var maxDate = new Date(defaultDate);中使用它。 – SteveW

2

的maxDate: - 設置可以選擇的最大日期。接受日期對象或相對編號。例如:+7,或者一個字符串,例如+ 6m。

minDate: -設置可以選擇的最短日期。接受一個數字,日期對象或字符串。

$(document).ready(function() { 
    $("#date").datepicker({ 
     minDate: -3, 
     maxDate: "1w" 
    }); 

});

參見: - set Minimum and maximum date to jquery datepicker

0

您還可以使用特定日期範圍。我添加了+ 14D最大值的最小開始日期。您只需要記住保持與您的日期格式一致,並在MM/DD/YYYY之間使用「/」而不是「 - 」。

$('#Date').datepicker({ 
 
    changeMonth: true, 
 
    minDate: '10/19/2016', 
 
    maxDate: '+14D', 
 
});

相關問題