Всплывающее окно календаря выбора начальной загрузки не закрывается после выбора даты из первого выбора даты?
Я использую загрузчик DatePicker для моего проекта, который находится в angularjs с использованием машинописи.
У меня есть два поля ввода для выбора "Дата начала" и "Дата окончания". Что я делаю, так это то, что когда пользователь выбирает дату начала, фокус переключается с поля "Дата начала" на поле "Дата окончания" и календарь выбора даты для всплывающей даты окончания. До этого все работало нормально, но проблема в том, что всплывающее окно календаря на конечную дату не закрывается, если не выбрана какая-либо дата.
<div class="form-group row m-b-0">
<label class="col-xs-3 col-sm-3 control-label p-t-5">Select Date</label>
<div class="col-xs-9 col-md-9">
<div class="row">
<div class=" col-xs-6 col-md-6">
<div class="input-control text full-size" style="margin-top:-2px;">
<input date-range-picker id="selectStartDate"
class="form-control date-picker text-center qc-datepicker ng-pristine ng-valid ng-isolate-scope ng-not-empty ng-touched"
type="button"
ng-model="coverCntrl.daterangepickerStart.date"
options="{autoclose: true, linkedCalendars: false,format: 'YYYY-MM-DD',singleDatePicker:true,showDropdowns:true,Esc:true,icons:{date: 'glyphicon glyphicon-calendar'}}"
aria-invalid="false" style="">
<span class="fa fa-calendar" style="position: absolute; top: 13px; left: 10px;"></span>
</div>
</div>
<div class="col-xs-6 col-md-6">
<div class="input-control text full-size" style="margin-top:-2px;">
<input date-range-picker id="selectEndDate"
class="form-control date-picker text-center qc-datepicker ng-pristine ng-valid ng-isolate-scope ng-not-empty ng-touched"
type="button" ng-blur="coverCntrl.hideFocus()"
ng-model="coverCntrl.daterangepickerEnd.date"
options="{autoclose: true, linkedCalendars: false,format: 'YYYY-MM-DD',singleDatePicker:true,Esc:true,showDropdowns:true}"
aria-invalid="false" style=""
min="coverCntrl.daterangepickerStart.date">
<span class="fa fa-calendar" style="position: absolute; top: 13px; left: 10px;"></span>
</div>
</div>
</div>
</div>
</div>
`
// код контроллера angularjs.
hideFocus() {
var endDate = window.document.getElementById("selectEndDate");
endDate.blur();
}
setFocus() {
var endDate = window.document.getElementById("selectEndDate");
endDate.focus();
this.daterangepickerEnd.date = this.daterangepickerStart.date;
}
private setUpWatches($scope: ng.IScope) {
$scope.$watch(() => this.daterangepickerStart.date, (v) => {
if (this.firstTimeWatch) {
this.firstTimeWatch = false
} else {
if (v) {
this.setFocus();
}
}
});
}
`