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

}

相关内容

热门资讯

曝光透视!约局吧怎么看有没有挂... 曝光透视!约局吧怎么看有没有挂!竟然真的是有辅助神器(讲解有挂)-哔哩哔哩1、进入游戏-大厅左侧-新...
推荐透视!wpk系统是否存在作... 推荐透视!wpk系统是否存在作必弊行为,wepoker软件靠谱么,指引教程(有挂详情)-哔哩哔哩运w...
科普透视!steampoker... 科普透视!steampokermaster辅助!切实有辅助软件(有挂细节)-哔哩哔哩暗藏猫腻,小编详...
详情透视!wepoker祈福有... 详情透视!wepoker祈福有用吗,hhpoker作必弊码怎么用,模块教程(有挂分析)-哔哩哔哩1、...
关于透视!佛手在线大菠萝辅助!... 关于透视!佛手在线大菠萝辅助!其实真的有辅助软件(有挂透明挂)-哔哩哔哩1、进入到佛手在线大菠萝辅助...
总结透视!竞技联盟透视插件,w... 总结透视!竞技联盟透视插件,wepoker辅助器下载,妙计教程(有挂工具)-哔哩哔哩1、许多玩家不知...
解谜透视!哈糖大菠萝破解器!其... 解谜透视!哈糖大菠萝破解器!其实真的有辅助方法(有挂规律)-哔哩哔哩1、实时哈糖大菠萝破解器透视辅助...
教你透视!约局吧能不能开挂,约... 教你透视!约局吧能不能开挂,约局吧如何查看是否有挂,技法教程(有挂秘籍)-哔哩哔哩约局吧如何查看是否...
普及透视!拱趴大菠萝万能挂图解... 普及透视!拱趴大菠萝万能挂图解!总是有辅助软件(有挂方法)-哔哩哔哩1、点击下载安装,拱趴大菠萝万能...
解谜透视!约局吧app有挂吗,... 解谜透视!约局吧app有挂吗,wepoker有人用过吗,课程教程(存在有挂)-哔哩哔哩1、wepok...