I built a component in Angular 2, and I'm trying to set the focus on the specific input after a modal is loaded.
Here is what I've done so far:
@Component({
selector: 'login',
templateUrl: './login.component.html'
})
export class LoginComponent {
showModal: boolean = false;
@ViewChild('username1') el: ElementRef;
constructor(private elementRef: ElementRef, private modalService: ModalService {
this.modalService.LoginModal.subscribe((show) => {
this.showModal = show;
if (show) {
$('#modal_login_root').modal();
this.el.nativeElement.focus();
}
else {
$('#modal_login_root').modal('hide');
}
});
}
And my input is:
<input #username1 type="email" class="form-control email active" name="username"
placeholder="{{ 'Login_EmailField' | translate }}" [(ngModel)]="username" />
And it's not working :(