Jquery ui 如何限制jqueryui日期范围?
我有两个日期选择器Jquery ui 如何限制jqueryui日期范围?,jquery-ui,Jquery Ui,我有两个日期选择器#from和#to,与往常一样,现在我需要做的是确保在这两个日期选择器之间选择的日期范围始终在彼此的3个月之内。因此,基本上,在选择一个选择器时,我需要为另一个选择器设置minDate/maxDate选项,相对于所选日期,但我不知道找到这些相对日期的最佳方法是什么。有什么建议吗?我已经创建了一个。天数之间的范围设置为3天。您可以根据您的要求进行编辑 $(document).ready(function () { $("#startDatePicker").datepicker(
#from
和#to
,与往常一样,现在我需要做的是确保在这两个日期选择器之间选择的日期范围始终在彼此的3个月之内。因此,基本上,在选择一个选择器时,我需要为另一个选择器设置minDate/maxDate选项,相对于所选日期,但我不知道找到这些相对日期的最佳方法是什么。有什么建议吗?我已经创建了一个。天数之间的范围设置为3天。您可以根据您的要求进行编辑
$(document).ready(function () {
$("#startDatePicker").datepicker({
dateFormat: 'yy-mm-dd',
onSelect: function (date) {
if ($('#endDatePicker').val() == "") {
var selectedDate = new Date(date);
var secsPerDay = 86400000;
var endDate = new Date(selectedDate.getTime() + 2 * secsPerDay);
alert(endDate);
$("#endDatePicker").datepicker("option", "minDate", selectedDate);
$("#endDatePicker").datepicker("option", "maxDate", endDate);
}
}
});
$("#endDatePicker").datepicker({
dateFormat: 'yy-mm-dd',
changeMonth: true,
onSelect: function (date) {
if ($('#startDatePicker').val() == "") {
var selectedDate = new Date(date);
var secsPerDay = 86400000;
var startDate = new Date(selectedDate.getTime() - 5 * secsPerDay);
$("#startDatePicker").datepicker("option", "minDate", startDate);
$("#startDatePicker").datepicker("option", "maxDate", selectedDate);
}
}
});
});
和HTML
<p>Start Date:
<input type="text" id="startDatePicker"/>
</p>
<p>End Date:
<input type="text" id="endDatePicker"/>
</p>
开始日期:
结束日期:
或者您可以这样做:
我想这两种方法都是有效的 .js 可能重复的
$("#startDatePicker").datepicker({
dateFormat: 'yy-mm-dd',
onSelect: function(dateText,dateObj){
var dateObject = $(this).datepicker("getDate");
dateObject.setMonth(dateObj.currentMonth+3);
$("#endDatePicker").datepicker( "option", "maxDate",dateObject);
}
});
$("#endDatePicker").datepicker({
dateFormat: 'yy-mm-dd',
changeMonth: true,
onSelect: function(dateText,dateObj){
var dateObject = $(this).datepicker("getDate");
dateObject.setMonth(dateObj.currentMonth-3);
$("#startDatePicker").datepicker( "option", "minDate",dateObject);
}
});