Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

125
Views
cómo evitar cambiar el menú desplegable de arranque ng cuando se presiona la tecla Intro en cualquier campo de entrada en angular13

Estoy usando el menú desplegable de arranque con alimentación angular y aquí cada vez que ingreso una tecla presionando en la entrada, siempre cambia el valor desplegable a la primera opción.

ENLACE DE DEMOSTRACIÓN

HTML:

 <div class="row mb-3 mt-3"> <div class="col"> <div ngbDropdown class="d-inline-block"> <button type="button" class="btn btn-outline-primary" id="dropdownBasic1" ngbDropdownToggle > {{ clickMessage }} </button> <div ngbDropdownMenu aria-labelledby="dropdownBasic1"> <button ngbDropdownItem class="nav-link" href="#" (click)="getText($event.target.innerText)" > Option 1 </button> <button ngbDropdownItem class="nav-link" href="#" (click)="getText($event.target.innerText)" > Option 2 </button> <button ngbDropdownItem class="nav-link" href="#" (click)="getText($event.target.innerText)" > Option 3 </button> </div> </div> </div> </div>

TS:

 clickMessage = 'Choose an option'; getText(text) { this.clickMessage = text; }
about 4 years ago · Juan Pablo Isaza
2 answers
Answer question

0

Agregue el siguiente código a su archivo ts.

 @HostListener('keydown', ['$event']) public onKeyDown(evt) { if (evt.key === 'Enter') { evt.preventDefault(); this.onSubmit(); } }

Te lo escribo en el siguiente stackblitz.

https://stackblitz.com/edit/angular12-bootstrap-skiant?file=src%2Fapp%2Fapp.component.ts,src%2Fapp%2Fapp.component.html,src%2Fapp%2Fapp.module.ts

about 4 years ago · Juan Pablo Isaza Report

0

El comportamiento que está viendo se debe a que tiene algunos botones sin ningún atributo de tipo y, de forma predeterminada, los botones en el formulario activan el evento de envío. Agregue el tipo a los botones en el menú desplegable y debería funcionar.

 <div ngbDropdownMenu aria-labelledby="dropdownBasic1"> <button type="button" ngbDropdownItem class="nav-link" href="#" (click)="getText($event, $event.target.innerText)" > Option 1 </button> <button type="button" ngbDropdownItem class="nav-link" href="#" (click)="getText($event, $event.target.innerText)" > Option 2 </button> <button ngbDropdownItem class="nav-link" href="#" (click)="getText($event, $event.target.innerText)" > Option 3 </button> </div>
about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!