我们酒店网站上有一个jQuery Datepcker,我们只希望客人在我们的预订表格上选择不超过3周的时间。我试图在这个论坛和网络上找到一个解决方案,但没有找到一个可行的答案。以下是我们现在的代码。我尝试使用maxDate:'+ 3W'然而这将禁用除当前日期3周之外的所有日子。无论客人选择何种抵达日期,出发日期最多只允许3周。任何帮助将不胜感激。
$( ".datepicker[name='A']" ).datepicker({
showOn: 'both',
defaultDate: "+1d",
dateFormat: 'mm/dd/yy',
minDate: "+1D",
changeMonth: false,
buttonText: '<i class="fa fa-calendar"></i>',
numberOfMonths: 1,
onClose: function( selectedDate ) {
$( ".datepicker[name='D']" ).datepicker( "option", "minDate", selectedDate );
}
});
$( ".datepicker[name='D']" ).datepicker({
showOn: 'both',
defaultDate: "+2d",
dateFormat: 'mm/dd/yy',
changeMonth: false,
buttonText: '<i class="fa fa-calendar"></i>',
numberOfMonths: 1,
onClose: function( selectedDate ) {
$( ".datepicker[name='A']" ).datepicker( "option", "maxDate", selectedDate );
}
});
答案 0 :(得分:1)
这是代码。
$( ".datepicker[name='A']" ).datepicker({
showOn: 'both',
defaultDate: "+1d",
dateFormat: 'mm/dd/yy',
minDate: "+2D",
changeMonth: false,
buttonText: '<i class="fa fa-calendar"></i>',
numberOfMonths: 1,
onClose: function( selectedDate ) {
console.log(new Date(new Date(selectedDate).getTime() + 1814400000));
$( ".datepicker[name='D']" ).datepicker( "option", "minDate", selectedDate );
$( ".datepicker[name='D']" ).datepicker( "option", "maxDate", new Date(new Date(selectedDate).getTime() + 1814400000) );
}
});
$( ".datepicker[name='D']" ).datepicker({
showOn: 'both',
defaultDate: "+2d",
dateFormat: 'mm/dd/yy',
changeMonth: false,
buttonText: '<i class="fa fa-calendar"></i>',
numberOfMonths: 1,
onClose: function( selectedDate ) {
$( ".datepicker[name='A']" ).datepicker( "option", "maxDate", selectedDate );
}
});
如果你有更好的方法,请发布。