Я использую Daterangepicker для нашего приложения.
Создание компонента выбора даты для нескольких поездок (3 поля ввода)
- TripOne – выберите дату (например, 19 февраля)
- TripTwo — необходимо начать с даты, выбранной TripOne.
- TripThree — необходимо начать с выбранной даты TripTwo.
Выше все работает нормально.
Но нижеприведенная проблема не работает с этим плагином.
- TripOne – выберите сегодняшнюю дату (не работает)
- TripTwo — если на TripOne выбрано 20 февраля, я не могу выбрать то же самое 20 февраля на TripTwo.
- TripThree — аналог TripTwo.
JS:
var nowDate = new Date();
var today = new Date(nowDate.getFullYear(), nowDate.getMonth(), nowDate.getDate(), 0, 0, 0, 0);
var maxLimitDate = new Date(nowDate.getFullYear(), nowDate.getMonth(), nowDate.getDate()+360, 0, 0, 0, 0);
$('input[name="tripOne"]').daterangepicker({
"autoApply": true,
"autoUpdateInput": false,
"singleDatePicker": true,
"minDate": today,
"maxDate": maxLimitDate,
"locale": {
format: 'DD MMM YYYY'
}
},function(start) {
$("#tripOne").val(start.format('DD MMM YYYY'));
$('#tripOne').parent().parent().removeClass('has-error');
var returnTripStartDate = new Date(Date.parse(start));
$('input[name="tripTwo"]').daterangepicker({
"autoApply": true,
"autoUpdateInput": false,
"singleDatePicker": true,
"minDate": returnTripStartDate,
"maxDate": maxLimitDate,
"locale": {
format: 'DD MMM YYYY'
}
},function(end) {
$("#tripTwo").val(end.format('DD MMM YYYY'));
$('#tripTwo').parent().parent().removeClass('has-error');
var returnTripStartDate2 = new Date(Date.parse(start));
$('input[name="tripThree"]').daterangepicker({
"autoApply": true,
"autoUpdateInput": false,
"singleDatePicker": true,
"minDate": returnTripStartDate2,
"maxDate": maxLimitDate,
"locale": {
format: 'DD MMM YYYY'
}
},function(end) {
$("#tripThree").val(end.format('DD MMM YYYY'));
$('#tripThree').parent().parent().removeClass('has-error');
});
$(function() {
$('.calendar.right').show();
});
});
$(function() {
$('.calendar.right').show();
});
$('input[name="tripOne"]').on('apply.daterangepicker', function(ev, picker) {
$(this).val(picker.startDate.format('DD MMM YYYY'));
});
$('input[name="tripTwo"]').on('apply.daterangepicker', function(ev, picker) {
$(this).val(picker.startDate.format('DD MMM YYYY'));
});
$('input[name="tripThree"]').on('apply.daterangepicker', function(ev, picker) {
$(this).val(picker.startDate.format('DD MMM YYYY'));
});
});
$(function() {
$('.calendar.right').show();
});