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

}

相关内容

热门资讯

查到实测!微信小程序游戏辅助,... 查到实测!微信小程序游戏辅助,wepoker有没有辅助,2025版教程(真实有挂);查到实测!微信小...
重大通报!天天爱消除自动消除辅... 重大通报!天天爱消除自动消除辅助,微乐陕西小程序破解器下载(竟然有挂)一、微乐陕西小程序破解器下载可...
实测发现!微信小程序辅助器脚本... 您好:微信小程序辅助器脚本这款游戏可以开挂的,确实是有挂的,很多玩家在这款游戏中打牌都会发现很多用户...
一分钟了解!川娱竞技插件,哥哥... 一分钟了解!川娱竞技插件,哥哥打大a辅助辅助(竟然有挂)1、下载好哥哥打大a辅助辅助正确养号方法之后...
最新研发!小程序财神十三张辅助... 最新研发!小程序财神十三张辅助,pokemomo辅助工具,必胜教程(有挂透明挂);1、点击下载安装,...
一分钟教会你!乐逍遥脚本辅助,... 一分钟教会你!乐逍遥脚本辅助,极速鱼虾蟹辅助(好像是有挂)1、全新机制【乐逍遥脚本辅助ai辅助工具激...
揭秘几款!小闲川南辅助工具,如... 您好,小闲川南辅助工具这款游戏可以开挂的,确实是有挂的,需要了解加微【136704302】很多玩家在...
9分钟了解!广西老友麻将有挂吗... 9分钟了解!广西老友麻将有挂吗,微乐多乐跑作弊(一贯真的是有挂)一、广西老友麻将有挂吗可以开透视的定...
安装程序教程!新超圣辅助靠谱不... 安装程序教程!新超圣辅助靠谱不,红龙poker辅助器免费观看,2025新版教程(有挂详情);新超圣辅...
终于清楚!创思维激K辅助器开挂... 终于清楚!创思维激K辅助器开挂,雀神挂件价格开挂透视(本来真的是有挂)1、许多玩家不知道雀神挂件价格...