Нажатие клавиши «Ввод» должно нажать определенную кнопку под углом 4 - PullRequest
0 голосов
/ 22 мая 2019

У меня есть страница с несколькими кнопками.При загрузке страницы, если я нажимаю клавишу «Ввод», она нажимает на определенную кнопку.Я хотел бы, чтобы пользователь нажимал другую кнопку, когда пользователь нажимает «Enter» при загрузке страницы.

Я пробовал это:

HTML:

<button type="submit" (click)="submitted()" id="submit-btn"><span #defaultButton>Submit</span> </button>

Ответы [ 3 ]

0 голосов
/ 22 мая 2019

Вы можете использовать @HostListener, чтобы обнаружить события документа и переопределить их.

  @ViewChild('defaultButton') defaultButton : ElementRef;

  @HostListener('document:keydown.enter', ['$event']) onKeydownHandler(event: KeyboardEvent) {
    event.preventDefault();
    this.defaultButton.nativeElement.click();
  }

Вот живой пример кода с ним:

https://stackblitz.com/edit/angular-vynxve

Хорошее место для чтения о HostListener и HostBinding:

https://codecraft.tv/courses/angular/custom-directives/hostlistener-and-hostbinding/

0 голосов
/ 22 мая 2019
<button type="submit" (keyup.enter)="submitted()" id="submit-btn"><span #defaultButton>Submit</span> </button>
0 голосов
/ 22 мая 2019

Вы попытались правильно настроить кнопку как type="submit".

Проблема со всеми другими кнопками в вашем представлении.Вам нужно настроить их как type="button", чтобы заставить его работать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...