【发布时间】:2016-03-10 12:00:11
【问题描述】:
JSFiddle 可以在这里找到:http://jsfiddle.net/PQfDc/682/
我需要它:
根据用户选择输入在 365 天期间选择一个日期。例如,用户输入 01/01/2016,他们只能选择 01/01/2016 和 01/01/2017 之间的日期,之后不能选择。
我还设置了一种方法,如果日期在 1 月 31 日之前,则开始和结束日期的最小值可能会有所不同。例如,用户可以选择的唯一日期是 31/01/2015 - 31/12/2016
var d = new Date(); var Month = d.getMonth();var Month = Month + 1;
var Year = d.getFullYear(); var Day = d.getDate();
if(Day <= 9){ var Day = "0".concat(Day);}
if(Month <= 9){ var Month = "0".concat(Month);}
if(Month == 01 && Day <= 31){
var Year = Year - 1;
var MinYear = "31-01-"+Year;
var Year = Year + 1;
var MaxYear = "31-12-"+Year;
} else {
var MinYear = "31-01-"+Year;
var Year = Year + 1;
var MaxYear = "31-12-"+Year;
}
$(function() {
/* global setting */
var datepickersOpt = {
dateFormat: 'dd-mm-yy',
minDate : 0
}
$("#TxtStrtDate").datepicker($.extend({
onSelect: function() {
var minDate = $(this).datepicker('getDate');
minDate.setDate(minDate.getDate()-365); //add two days
$("#TxtExpDte").datepicker( "option", "minDate", minDate);
}
},datepickersOpt));
$("#TxtExpDte").datepicker($.extend({
onSelect: function() {
var maxDate = $(this).datepicker('getDate');
maxDate.setDate(maxDate.getDate()+365);
$("#TxtStrtDate").datepicker( "option", "maxDate", maxDate);
}
},datepickersOpt));
});
【问题讨论】:
-
minDate和maxDate都接受相对值……api.jqueryui.com/datepicker/#option-maxDate
标签: javascript jquery date