我必须在当月的15日之前和之后将最大日期设置为上个月的最后日期。 我能够获得上个月的最后一个日期,但是如何在当月的15个月之后才能获得上个月的最后一个日期。
例如:
如果今天是11月14日,那么datepicker的最大日期应该是9月30日,否则今天是11月15日,那么datepicker的最大日期应该是10月31日。
如何更新我的代码以实现此目的。
var maxDate = new Date();
maxDate.setMonth(maxDate.getMonth()-0, 0);
$(function() {
$( "#from" ).datepicker({
changeMonth: true,
changeYear:true,
dateFormat: 'dd-mm-yy',
minDate: new Date(2013, 3, 1),
maxDate: maxDate,
beforeShow: function(){
$(".ui-datepicker").css('font-size', 10)
},
onSelect: function( selectedDate ) {
$( "#to" ).datepicker( "option", "minDate", selectedDate );
}
});
$( "#to" ).datepicker({
changeMonth: true,
changeYear:true,
dateFormat: 'dd-mm-yy',
minDate: new Date(2013, 3, 1),
maxDate: maxDate,
beforeShow: function(){
$(".ui-datepicker").css('font-size', 10)
},
onSelect: function( selectedDate ) {
$( "#from" ).datepicker( "option", "maxDate", selectedDate );
$.datepicker.formatDate('dd-mm-yyyy');
}
});
});
答案 0 :(得分:0)
我编写了一个名为 getMaxDate()
的方法,该方法根据以下条件返回 maxdate
,
今天的日期是< 15,然后maxDate
今天的月份-2和该月的最后一个日期。
今天的日期是> = 15,然后maxDate
今天的月份-1和该月的最后一个日期。
function getMaxDate() {
var today = new Date();
var max = new Date();
if (today.getDate() < 15) {
max.setMonth(max.getMonth() - 1, 0);
} else {
max.setMonth(max.getMonth() - 0, 0);
}
return max;
}
然后将其称为
maxDate = getMaxDate();
希望你明白。