我有两个带有datepicker的输入字段:
$('#dpd1').datepicker();
$('#dpd2').datepicker();
是否可以将第二个字段依赖于第一个字段?
例如,我不会在第一个字段中选择日期'2018-01-15',而不是隐藏datepicker日历,关注第二个字段,其中应该仅在第一个字段+ 1天('2018-01-16'的几天内启用更高)。
我找到了这个脚本:
if(jQuery('#dpd1').length){
var nowTemp = new Date();
var now = new Date(nowTemp.getFullYear(), nowTemp.getMonth(), nowTemp.getDate(), 0, 0, 0, 0);
var checkin = $('#dpd1').datepicker({
onRender: function(date) {
return date.valueOf() < now.valueOf() ? 'disabled' : '';
}
}).on('changeDate', function(ev) {
if (ev.date.valueOf() > checkout.date.valueOf()) {
var newDate = new Date(ev.date)
newDate.setDate(newDate.getDate() + 1);
checkout.setValue(newDate);
}
checkin.hide();
$('#dpd2')[0].focus();
}).data('datepicker');
var checkout = $('#dpd2').datepicker({
onRender: function(date) {
return date.valueOf() <= checkin.date.valueOf() ? 'disabled' : '';
}
}).on('changeDate', function(ev) {
checkout.hide();
}).data('datepicker');
}
但我无法为我的目的自定义此脚本。这里有人可以帮助我吗?谢谢。
答案 0 :(得分:0)
我找到了解决方案:
if(jQuery('#dpd1').length){
var checkin = $('#dpd1').datepicker({
}).on('changeDate', function(ev) {
var newDate = new Date(ev.date)
newDate.setDate(newDate.getDate() + 1);
checkout.setValue(newDate);
checkin.hide();
$('#dpd2')[0].focus();
}).data('datepicker');
var checkout = $('#dpd2').datepicker({
onRender: function(date) {
return date.valueOf() <= checkin.date.valueOf() ? 'disabled' : '';
}
}).on('changeDate', function(ev) {
checkout.hide();
}).data('datepicker');
}