У меня есть 4 выпадающих списка -FromYear- -FromMonth- -ToYear- -ToMonth- Когда я выбираю год из 1-го и 3-го выпадающего списка, он должен получить массив месяцев для заполнения других моих выпадающих списков.Я получаю месяцы с идентификатором выбранного года, используя selectFromYearsEvent
Это мой компонент
export class CalendarComponent implements OnInit {
year: number[];
selectYears: Year[];
selectedFromYear: Year;
selectedToYear: Year;
selectFromMonths: Month[];
selectToMonths: Month[];
selectedFromMonth: Month;
selectedToMonth: Month;
selectedMonths: Month[];
months: Month[];
constructor(private calendarService: CalendarService, private monthsService: MonthsService) {
}
ngOnInit() {
this.getYears();
}
getYears() {
this.calendarService.getYears().subscribe(y => {
this.selectYears = y;
});
}
getMonth() {
this.calendarService.getYear(this.selectedFromYear.id).subscribe(y => {
this.selectedFromYear.months = y;
this.selectFromMonths = y;
});
}
selectFromYearsEvent(newYear) {
this.selectedFromYear = newYear;
this.getMonth();
}
}
, а это мой HTML-код
<div class="container-calendar">
<div class="calendar-dates">
<!-- from part -->
<div class="from-date">
<div class="from-date-dropdown">
<select name="fromYear" [(ngModel)]="selectYears" (ngModelChange)="selectFromYearsEvent($event)"> <!-- [(ngModel)]="selectedFromYear"> -->
<option name="fromYear2" *ngFor="let year of selectYears" [ngValue]="year">
{{year.number}}
</option>
</select>
</div>
</div>
<div class="from-date">
<div class="state-dropdown">
<select name="fromMonth" [(ngModel)]="selectFromMonths" (ngModelChange)="selectFromMonthEvent($event)"> <!-- [(ngModel)]="selectedFromMonth"> -->
<option *ngFor='let month of selectFromMonth' [ngValue]="month">
{{month.name}}
</option>
</select>
</div>
</div>