You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Angular点击事件传参后,如何正确获取表单组对应控件的值?

Angular点击按钮传参后无法取值的解决方案

你的代码存在两个核心问题:

  • 函数参数gotInput被声明但未实际使用,导致TypeScript提示'Value is declared but its value is never read'
  • 错误地将参数名当作FormGroup控件的固定名称访问,无法动态获取目标控件的值

修正后的模板代码

<button (click)="callFoo('bar')">Click Me!</button>
<!-- 传入控件名称的字符串,比如这里的'bar'对应FormGroup里的控件名 -->

修正后的TS代码

callFoo(controlName: string) {
    // 通过传入的控件名字符串动态访问FormGroup控件
    const controlValue = this.someFormGroup.controls[controlName]?.value;
    console.log("Print: ", controlValue);
}

补充说明

如果你的bar是组件类中定义的变量(比如bar = 'username',存储控件名称),模板可以直接传变量:

<button (click)="callFoo(bar)">Click Me!</button>

TS代码保持上述写法即可,此时bar的变量值会作为控件名传入函数,动态获取对应控件的值。

内容的提问来源于stack exchange,提问作者Snk

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.12 19:57:08