Условный выбор опции из события по угловому x

Вопрос задан: 7 месяцев назад Последняя активность: 7 месяцев назад
up 0 down

У меня есть список выбора, и я хочу запустить действие (событие) после того, как пользователь нажмет на выбор (опция).

Я использовал (изменить) событие в элементе Select, оно работает, но оно обновило выбранный элемент. нет события, которое можно запустить по щелчку опции?

Действие, которое я хочу, - если пользователь нажимает на опцию, которую я проверяю, если это правда, я разрешаю ему выбрать этот элемент, в противном случае он остается на текущем.

текущий код:

<select id="myselect" (change)="verifyData($event.target.value)" formControlName="myElement">
                <option *ngFor="let items of items" [value]="item.name">{{ item.name }}</option>
            </select>

1 ответ

up 0 down

РЕДАКТИРОВАНИЕ

Вы можете подписаться на изменения значений элемента управления формы и вернуть его к предыдущему значению, если какая-то логика отвечает вашим потребностям. Это должно работать:

ngOnInit(item) {
    this.oldValue = this.form.value.myElement;
    this.form.get('myElement').valueChanges.subscribe((a) => {
    if (a == 3) {
      this.form.get('myElement').setValue(this.oldValue, { emitEvent: false });
    } else {
      this.oldValue = a;
    }
  });
}

Вот ссылка на рабочий пример на stackblitz https://stackblitz.com/edit/angular-conditional-select-change?file=src%2Fapp%2Fapp.component.ts