jQuery datepicker显示下个月(如果接近本月底)
如果当前日期接近月底,如何将日历设置为自动显示下个月 以解决日历是否默认为此的问题 目前我有:jQuery datepicker显示下个月(如果接近本月底),jquery,jquery-ui-datepicker,Jquery,Jquery Ui Datepicker,如果当前日期接近月底,如何将日历设置为自动显示下个月 以解决日历是否默认为此的问题 目前我有: $(predecessor+"input.datePicker").datepicker({ minDate: 0, changeMonth: true, dateFormat: "dd/mm/yy", firstDay: 1, hideIfNoPrevNext: true, showAnim: 'slideDown', showOn: "bo
$(predecessor+"input.datePicker").datepicker({
minDate: 0,
changeMonth: true,
dateFormat: "dd/mm/yy",
firstDay: 1,
hideIfNoPrevNext: true,
showAnim: 'slideDown',
showOn: "both",
showOtherMonths: true,
showStatus: true,
maxDate: '-1d'
});
Datepicker有一个defaultDate选项,指定突出显示哪一天开始 所以,如果你能拿出你的逻辑来决定下个月什么时候开始,那应该很简单
var defaultDate = new Date();
if(advanceMonth){
defaultDate = new Date(defaultDate.getYear(), defaultDate.getMonth() + 1, 1, 0, 0,0)
}
$(predecessor+"input.datePicker").datepicker({
defaultDate: defaultDate
});
Datepicker有一个defaultDate选项,指定突出显示哪一天开始 所以,如果你能拿出你的逻辑来决定下个月什么时候开始,那应该很简单
var defaultDate = new Date();
if(advanceMonth){
defaultDate = new Date(defaultDate.getYear(), defaultDate.getMonth() + 1, 1, 0, 0,0)
}
$(predecessor+"input.datePicker").datepicker({
defaultDate: defaultDate
});
使用
beforeShow
事件设置属性numberOfMonths
$('#calendar').datepicker({
//minDate: 0,
changeMonth: true,
dateFormat: "dd/mm/yy",
firstDay: 1,
hideIfNoPrevNext: true,
showAnim: 'slideDown',
showOn: "both",
showOtherMonths: true,
showStatus: true,
//maxDate: '-1d'
beforeShow: function(text, inst){
var next_day = new Date(
inst.selectedYear,
inst.selectedMonth,
inst.selectedDay
);
next_day.setDate(next_day.getDate()+1);
console.log(inst.selectedMonth);
console.log(next_day.getMonth());
if(inst.selectedMonth != next_day.getMonth())
return {numberOfMonths: 2};
else
return {numberOfMonths: 1};
}
}).datepicker("setDate", "+0d" );
演示:,选择11月30日并再次打开。使用
beforeShow
事件设置属性numberOfMonths
$('#calendar').datepicker({
//minDate: 0,
changeMonth: true,
dateFormat: "dd/mm/yy",
firstDay: 1,
hideIfNoPrevNext: true,
showAnim: 'slideDown',
showOn: "both",
showOtherMonths: true,
showStatus: true,
//maxDate: '-1d'
beforeShow: function(text, inst){
var next_day = new Date(
inst.selectedYear,
inst.selectedMonth,
inst.selectedDay
);
next_day.setDate(next_day.getDate()+1);
console.log(inst.selectedMonth);
console.log(next_day.getMonth());
if(inst.selectedMonth != next_day.getMonth())
return {numberOfMonths: 2};
else
return {numberOfMonths: 1};
}
}).datepicker("setDate", "+0d" );
演示:,选择11月30日,然后再次打开