Angular响应式表单中如何将焦点设置到动态创建的输入框?
创始人
2024-10-30 08:00:47
0

可以通过使用 ViewChild 装饰器获取到动态创建的输入框所对应的 FormGroupDirective,然后在必要时通过调用 ElementRef 中的 focus() 方法即可将焦点设置到该输入框中。

示例代码:

在 .html 文件中,通过 ngFor 创建动态表单控件:

在 .ts 文件中,使用 ViewChild 装饰器获取动态创建的输入框所对应的 FormGroupDirective 并设置焦点:

import { Component, OnInit, ViewChild, ElementRef } from '@angular/core';
import { FormGroup, FormControl } from '@angular/forms';

@Component({...})
export class MyComponent implements OnInit {

  @ViewChild(FormGroupDirective) formGroupDirective: FormGroupDirective;
  controls = ['firstName', 'lastName'];

  form = new FormGroup({
    firstName: new FormControl(),
    lastName: new FormControl()
  });

  constructor(private elem: ElementRef) {}

  ngOnInit(): void {}

  setFocus(input: HTMLInputElement): void {
    this.formGroupDirective.form.patchValue({
      [input.name]: input.value.trim()
    });
    this.elem.nativeElement.querySelector(`[formControlName="${input.name}"]`).focus();
  }

}

相关内容

热门资讯

外挂窍门!聚星ai辅助工具激活... 外挂窍门!聚星ai辅助工具激活码,佛手在线大菠萝智能辅助器-好像是真的有辅助插件(哔哩哔哩)1、全新...
外挂演示!德扑圈透视,德普之星... 外挂演示!德扑圈透视,德普之星透视辅助软件激活码-都是真的有辅助神器(哔哩哔哩)该软件可以轻松地帮助...
外挂学习!扑克之星辅助,德州透... 外挂学习!扑克之星辅助,德州透视插件-其实一直都是有辅助软件(哔哩哔哩)1、不需要AI权限,帮助你快...
外挂秘籍!智星菠萝透视,约局吧... 外挂秘籍!智星菠萝透视,约局吧德州真的存在透视吗-都是有辅助方法(哔哩哔哩)1、上手简单,内置详细流...
外挂讲义!uupoker透视,... 外挂讲义!uupoker透视,pokermaster辅助器-确实有辅助脚本(哔哩哔哩)1、玩家可以在...
外挂练习!德普之星私人局辅助器... 外挂练习!德普之星私人局辅助器,sohoo poker辅助-原来是真的有辅助软件(哔哩哔哩)所有人都...
外挂手册!aa poker辅助... 外挂手册!aa poker辅助包,拱趴大菠萝作必弊方法-原来一直都是有辅助攻略(哔哩哔哩)拱趴大菠萝...
外挂方案!wepoker安装教... 外挂方案!wepoker安装教程,红龙poker辅助器免费观看-果然一直都是有辅助app(哔哩哔哩)...
外挂法子!佛手大菠萝13道挂哪... 外挂法子!佛手大菠萝13道挂哪里,来玩app破解版-竟然是真的有辅助脚本(哔哩哔哩)进入游戏-大厅左...
外挂策略!拱趴大菠萝有什么挂,... 外挂策略!拱趴大菠萝有什么挂,哈糖大菠萝免费辅助器-果然一直总是有辅助插件(哔哩哔哩)1、用户打开应...