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();
  }

}

相关内容

热门资讯

最新技巧!上饶中至打炸漏洞,上... 最新技巧!上饶中至打炸漏洞,上品五十k辅助,详细挂(有挂存在)1、实时上饶中至打炸漏洞透视辅助更新:...
每日必看!小程序蜀山西川血战辅... 每日必看!小程序蜀山西川血战辅助,打大a辅助器,详细技巧(有挂细节)1、在小程序蜀山西川血战辅助插件...
发现一款!盛世2私人辅助,爱玩... 发现一款!盛世2私人辅助,爱玩辅助有挂吗软件,详细挂(详细教程)发现一款!盛世2私人辅助,爱玩辅助有...
必知教程!小程序河北微乐脚本,... 必知教程!小程序河北微乐脚本,潮友会虾蟹骰子概率计算方式,详细挂(真的有挂)1、玩家可以在潮友会虾蟹...
总算了解!腾讯欢乐卡五星辅助器... 总算了解!腾讯欢乐卡五星辅助器,潮汕来物局透视脚本,详细攻略(有挂方针)所有人都在同一条线上,像星星...
玩家攻略!创思维怎么开挂,三加... 玩家攻略!创思维怎么开挂,三加一辅助,详细软件(有挂分享)1)创思维怎么开挂辅助插件:进一步探索创思...
一分钟了解!老友广东辅助器,仟... 一分钟了解!老友广东辅助器,仟众部落辅助,详细技巧(有挂实锤)1、老友广东辅助器公共底牌简单,老友广...
一分钟揭秘!微信边锋辅助挂件,... 一分钟揭秘!微信边锋辅助挂件,同乡有辅助,详细器(有挂规律)1、微信边锋辅助挂件免费脚本咨询教程、微...
每日必看教程!免费挂机辅助工具... 每日必看教程!免费挂机辅助工具,蜜瓜大厅辅助免费下载,详细工具(证实有挂)1、任何蜜瓜大厅辅助免费下...
重大科普!广西友乐免费辅助,龙... 重大科普!广西友乐免费辅助,龙江博乐填大坑辅助,详细插件(有挂分享)1、完成龙江博乐填大坑辅助有辅助...