【发布时间】:2018-10-25 16:54:33
【问题描述】:
我制作了一个包含 3 个输入的脚本:
-开始日期
-输入类型号(添加天数)
-结果日期(开始日期和添加天数的总和)
我必须将日期、月份和年份与开始日期分开显示,但是当结果日期输入更新时我没有得到它。
$(function() {
$("#numNights").on('change', function() {
$('#LastDate,#BeginDate').val('');
$('.dateDetails span').html('');
daysAdded = this.daysAdded.val();
});
$("#BeginDate").datepicker({
dateFormat: 'mm/dd/yy',
changeMonth: true,
minDate: new Date(),
maxDate: '+1Y',
onSelect: function(value, date) {
var months = ["Jan", "Feb", "Mar", "Apr", "May", "Jun",
"Jul", "Aug", "Sep", "Oct", "Nov", "Dec"
];
//Populate the selected date on other elements this works fine
$('#arrDate span.month').html(months[date.selectedMonth]);
$('#arrDate span.day').html(date.selectedDay);
$('#arrDate span.year').html(date.selectedYear);
},
onClose: function(selected) {
var daysAdded = parseInt($('#numNights').val());
var dateDefaults = new Date(selected);
dateDefaults.setDate(dateDefaults.getDate() + daysAdded);
var dd = dateDefaults.getDate();
var mm = dateDefaults.getMonth() + 1;
var y = dateDefaults.getFullYear();
var dtFormatted = mm + '/' + dd + '/' + y;
//LastDate input fills with the result of beginDate+added days
$('#LastDate').val(dtFormatted);
//Set date to LastDate input datepicker with out open or display behavior
//Try to Populate the result date in other elements (like BeginDate) but doesn't works
$(function() {
$('#LastDate').datepicker({
disabled: true,
setDate: dtFormatted,
onSelect: function(value, date) {
var months = ["Jan", "Feb", "Mar", "Apr", "May", "Jun",
"Jul", "Aug", "Sep", "Oct", "Nov", "Dec"
];
$('#depDate span.month').html(months[date.selectedMonth]);
$('#depDate span.day').html(date.selectedDay);
$('#depDate span.year').html(date.selectedYear);
}
});
});
}
});
});
我在 jsfiddle 链接中分享我的代码:https://jsfiddle.net/alonsoct/8f63dyco/
感谢您的帮助!
【问题讨论】:
标签: javascript jquery html datepicker customization