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

}

相关内容

热门资讯

9分钟了解!蜀渝牌乐汇挂机软件... 9分钟了解!蜀渝牌乐汇挂机软件,wepoker代打辅助机器人,我来教教你(有挂教学);是一款可以让一...
发现玩家!哈局八张有没有透视挂... 发现玩家!哈局八张有没有透视挂,hhpoker有后台操控吗,曝光教程(详细教程)是一款可以让一直输的...
揭秘关于!仙桃晃晃辅助器,we... 揭秘关于!仙桃晃晃辅助器,wepoker辅助器安装包,黑科技教程(有挂教程);揭秘关于!仙桃晃晃辅助...
最新研发!微信小程序功夫川辅助... 最新研发!微信小程序功夫川辅助,wepokerplus脚本,科技教程(有挂秘诀)是一款可以让一直输的...
技巧知识分享!来几局辅助器开挂... 技巧知识分享!来几局辅助器开挂,hhpoker辅助挂是真的吗,揭秘教程(有挂秘诀)是一款可以让一直输...
玩家必用!哥哥打大a辅助神器,... 玩家必用!哥哥打大a辅助神器,hhpoker真的有透视吗,透明挂教程(有挂工具)是一款可以让一直输的...
发现玩家!贪玩互娱辅助,wej... 发现玩家!贪玩互娱辅助,wejoker内置辅助,第三方教程(新版有挂)是一款可以让一直输的玩家,快速...
揭秘关于!小程序微乐游戏辅助器... 揭秘关于!小程序微乐游戏辅助器,wepoker轻量版有透视吗,黑科技教程(有挂头条);1、很好的小程...
我来教教大家!微乐家乡游戏攻略... 我来教教大家!微乐家乡游戏攻略,wepoker-h5下载,透牌教程(有挂实锤);微乐家乡游戏攻略软件...
每日必备!网上微乐家乡微信版辅... 每日必备!网上微乐家乡微信版辅助器,wepoker软件辅助程序,切实教程(有挂方法);人气非常高,a...