angular - 如何在 ngsubmit 方法中获取预填充的表单字段值?
问题描述
我有一个包含 3 个字段的反应式表单,其中两个字段具有默认值,并且这些字段对用户禁用。用户必须输入第三个字段的值并提交表单。提交时,我只在 form.value 中获取用户输入的值
constructor(private fb: FormBuilder, private userService: UserService) {
this.signUpForm = fb.group({
'name': ['John Doe', Validators.required],
'email': ['john@requantive.com', Validators.required],
'phone': [null, Validators.required]
});
}
当我在 ngsubmit 方法上控制台记录 form.value 时,我得到的输出为
{电话:“123456”}电话:“123456” 原型:对象
解决方案
如果您使用 disabled 方法禁用 Formcontrol,请使用 getRawValue() 方法获取所有值,包括禁用的控件
app.component.ts
this.signUpForm = fb.group({
'name': [{value:'John Doe', disabled:true}, Validators.required],
'email': [ {value:'john@requantive.com', disabled:true}, Validators.required],
'phone': [null, Validators.required]
});
app.component.html
<form [formGroup]="signUpForm">
<input formControlName="name">
<input formControlName="email">
<input formControlName="phone">
</form>
formValue:{{signUpForm.getRawValue() | json}}
推荐阅读
- puppeteer - `page.goto` 超时后 Puppeteer `page` 对象不起作用?
- swift - NSTableView 逐行滚动
- android - 字段_user尚未初始化 - Flutter
- ios - 尝试从 Swift iOS 中的地图打开商店位置时,Google 地图永远加载
- grpc - 持久的 grpc 流式 RPC 和退避策略
- paypal - Paypal 订阅用户:50% 的时间显示“我们无法处理您的定期付款”
- sql - 当值更改时重置行号
- javascript - 为什么 npm run 会导致错误:“Router.use() 需要一个中间件函数,但需要一个 ' + gettype(fn)”?
- python - FastAI NLP 迁移学习,迁移学习模型是否具有预训练模型的词汇?
- flutter - 如何使用键组合两个嵌套映射的子集?