请问如何将 jQuery ui 日期选择器日历的结束日期设置为用户的开始日期?
How do I set the end date of a jQuery ui datepicker calendar to the users start date please?
我是 Javascript 的新手,希望能为我的 jQuery 日期选择器代码提供一些帮助。我花了很长时间在这里查看并试图修复我的代码,但似乎无法让它工作......我希望用户 select 开始日期,然后当他们点击结束时日期,他们只能选择从开始日期开始的日期。我还需要计算天数(但我已经完成了这个工作)。
脚本代码如下:
function showDays() {
var start = $('#startDate').datepicker('getDate');
var end = $('#endDate').datepicker('getDate');
if (!start || !end) return;
var days = (end - start) / 1000 / 60 / 60 / 24;
$('#noDays').val(days);
if (days > 15) {
alert ( "The maximum amount of nights is 15. Please select dates within this range." )
$( '#endDate' ).focus();
}
document.getElementById("p__myTrip--days").innerHTML = days;
}
$("#startDate").datepicker({
dateFormat: 'dd-mm-yy',
minDate: 0,
changeMonth: true,
onSelect: showDays,
onClose: function( selectedDate ) {
var dParts = selectedDate.split('-');
var in30Days = new Date(dParts[2] + '/' +
dParts[1] + '/' +
(+dParts[0] + 30)
);
$("#endDate").datepicker("option", "minDate");
}
});
$("#endDate").datepicker({
minDate: 1,
changeMonth: true,
dateFormat: 'dd-mm-yy',
setDate: '#startDate',
onSelect: showDays
});
如有任何帮助,我们将不胜感激!谢谢! :)
你可以试试这个:
$("#endDate").datepicker({
minDate: 1,
changeMonth: true,
dateFormat: 'dd-mm-yy',
setDate: '#startDate',
endDate: '#endDate',
onSelect: showDays
});
我是 Javascript 的新手,希望能为我的 jQuery 日期选择器代码提供一些帮助。我花了很长时间在这里查看并试图修复我的代码,但似乎无法让它工作......我希望用户 select 开始日期,然后当他们点击结束时日期,他们只能选择从开始日期开始的日期。我还需要计算天数(但我已经完成了这个工作)。
脚本代码如下:
function showDays() {
var start = $('#startDate').datepicker('getDate');
var end = $('#endDate').datepicker('getDate');
if (!start || !end) return;
var days = (end - start) / 1000 / 60 / 60 / 24;
$('#noDays').val(days);
if (days > 15) {
alert ( "The maximum amount of nights is 15. Please select dates within this range." )
$( '#endDate' ).focus();
}
document.getElementById("p__myTrip--days").innerHTML = days;
}
$("#startDate").datepicker({
dateFormat: 'dd-mm-yy',
minDate: 0,
changeMonth: true,
onSelect: showDays,
onClose: function( selectedDate ) {
var dParts = selectedDate.split('-');
var in30Days = new Date(dParts[2] + '/' +
dParts[1] + '/' +
(+dParts[0] + 30)
);
$("#endDate").datepicker("option", "minDate");
}
});
$("#endDate").datepicker({
minDate: 1,
changeMonth: true,
dateFormat: 'dd-mm-yy',
setDate: '#startDate',
onSelect: showDays
});
如有任何帮助,我们将不胜感激!谢谢! :)
你可以试试这个:
$("#endDate").datepicker({
minDate: 1,
changeMonth: true,
dateFormat: 'dd-mm-yy',
setDate: '#startDate',
endDate: '#endDate',
onSelect: showDays
});