当月份有31天时,jQuery datepicker将不允许选择日期,并选择月份的第一天
您好,我有两个日期选择器,第二个日期选择器不允许用户从第一个日期选择器的日期选择大于30天的日期 如果选择月中的某一天,或者如果我在一个月中选择的某一天的天数大于或小于31天,则此操作正常 但如果月份有31天,并且我选择了第一天,即2014年1月1日、2014年3月1日dd/MM/yyyy格式,则我无法选择任何日期 任何比我更有经验的人都能看出我哪里出了问题当月份有31天时,jQuery datepicker将不允许选择日期,并选择月份的第一天,jquery,datepicker,Jquery,Datepicker,您好,我有两个日期选择器,第二个日期选择器不允许用户从第一个日期选择器的日期选择大于30天的日期 如果选择月中的某一天,或者如果我在一个月中选择的某一天的天数大于或小于31天,则此操作正常 但如果月份有31天,并且我选择了第一天,即2014年1月1日、2014年3月1日dd/MM/yyyy格式,则我无法选择任何日期 任何比我更有经验的人都能看出我哪里出了问题 $("#ArrivalDate").datepicker({ dateFormat: "dd/mm/yy", minDat
$("#ArrivalDate").datepicker({
dateFormat: "dd/mm/yy",
minDate: 0,
onSelect: function () {
var dteMaxBookings = $('#ArrivalDate').datepicker('getDate');
dteMaxBookings.setDate(dteMaxBookings.getDate() + 30);
$('#DepartDate').datepicker('setDate', dteMaxBookings);
$('#DepartDate').datepicker('option', 'maxDate', dteMaxBookings);
var dteMinBooking = $('#ArrivalDate').datepicker('getDate');
dteMinBooking.setDate(dteMaxBookings.getDate() + 2);
$('#DepartDate').datepicker('option', 'minDate', dteMinBooking);
}
});
$('#DepartDate').datepicker({
dateFormat: "dd/mm/yy",
onClose: function () {
calculate();
var dteArrivalDate = $('#ArrivalDate').datepicker('getDate');
var dteDepartDate = $('#DepartDate').datepicker('getDate');
if (dteDepartDate <= dteArrivalDate) {
var maxDate = $('#DepartDate').datepicker('option', 'maxDate');
$('#DepartDate').datepicker('setDate', maxDate);
}
}
});
问题是因为您正在使用dteMaxBookings计算另一个日期选择器的minDate 将此更改为$ArrivalDate.datepicker。。。。onSelect: 为此: 现在,当minDate和maxDate为另一个dateipcker工作时,下面的onClose块是多余的 您可以从$'DepartDate'中删除此项。日期选择器….:
.谢谢@abhitalks我花了很长时间看这个,但从来没有注意到我做了那个。谢谢你的帮助,祝你新年快乐
var dteMinBooking = $('#ArrivalDate').datepicker('getDate');
dteMinBooking.setDate(dteMaxBookings.getDate() + 2); // dteMaxBookings ?
$('#DepartDate').datepicker('option', 'minDate', dteMinBooking);
var dteMinBooking = $('#ArrivalDate').datepicker('getDate');
dteMinBooking.setDate(dteMinBooking.getDate() + 2); // change to dteMinBooking
$('#DepartDate').datepicker('option', 'minDate', dteMinBooking);
onClose: function () {
var dteArrivalDate = $('#ArrivalDate').datepicker('getDate');
var dteDepartDate = $('#DepartDate').datepicker('getDate');
if (dteDepartDate <= dteArrivalDate) {
var maxDate = $('#DepartDate').datepicker('option', 'maxDate');
$('#DepartDate').datepicker('setDate', maxDate);
}
}