如何从 angular 中的动态表单获取价值
how to get value from dynamic form in angular
如何从 angular 动态表单中获取值
这是我的代码:
我的 html
<form (ngSubmit)="PreviewData()" [formGroup]="DataForm">
<div class="form-group row" *ngFor="let data of FormData;" >
<label class="col-md-2 col-form-label" >{{data.name}}</label>
<div class="col-md-10">
<input type="text" class="form-control" name="{{data.name}}">
</div>
</div>
<button class="btn btn-primary float-right" type="submit" >Preview</button>
</form>
在我的打字稿文件中
PreviewData() {
this.payLoad = JSON.stringify(this.DataForm.value);
}
如何从 ts 文件中的组数据中获取值
您可以通过以下方式从 FormGroup
中获取个人数据值:
this.DataForm.get('<enter control name>').value
例如,如果您的表单控件是 'email':
this.DataForm.get('email').value
或者,您可以将整个表单值作为对象获取:
this.DataForm.getRawValue()
使用函数添加 formControl。
import { Component, OnInit, ViewChild } from '@angular/core';
import { FormGroup, FormArray, Validators, FormControl } from '@angular/forms';
@Component({
selector: 'app-sample-reactive-form',
templateUrl: './sample-reactive-form.component.html',
styleUrls: ['./sample-reactive-form.component.css']
})
export class SampleReactiveFormComponent
{
payLoad: any;
FormData: any;
DataForm: FormGroup = new FormGroup({});
constructor()
{
this.FormData = [{
name:'a'
},{
name:'b'
}]
this.DataForm = this.generateFormControls(this.FormData);
}
generateFormControls(formData: any)
{
let tempGroup: FormGroup = new FormGroup({});
formData.forEach(i=>{
tempGroup.addControl(i.name, new FormControl(''))
})
return tempGroup;
}
PreviewData()
{
this.payLoad = JSON.stringify(this.DataForm.value);
}
}
如何从 angular 动态表单中获取值 这是我的代码: 我的 html
<form (ngSubmit)="PreviewData()" [formGroup]="DataForm">
<div class="form-group row" *ngFor="let data of FormData;" >
<label class="col-md-2 col-form-label" >{{data.name}}</label>
<div class="col-md-10">
<input type="text" class="form-control" name="{{data.name}}">
</div>
</div>
<button class="btn btn-primary float-right" type="submit" >Preview</button>
</form>
在我的打字稿文件中
PreviewData() {
this.payLoad = JSON.stringify(this.DataForm.value);
}
如何从 ts 文件中的组数据中获取值
您可以通过以下方式从 FormGroup
中获取个人数据值:
this.DataForm.get('<enter control name>').value
例如,如果您的表单控件是 'email':
this.DataForm.get('email').value
或者,您可以将整个表单值作为对象获取:
this.DataForm.getRawValue()
使用函数添加 formControl。
import { Component, OnInit, ViewChild } from '@angular/core';
import { FormGroup, FormArray, Validators, FormControl } from '@angular/forms';
@Component({
selector: 'app-sample-reactive-form',
templateUrl: './sample-reactive-form.component.html',
styleUrls: ['./sample-reactive-form.component.css']
})
export class SampleReactiveFormComponent
{
payLoad: any;
FormData: any;
DataForm: FormGroup = new FormGroup({});
constructor()
{
this.FormData = [{
name:'a'
},{
name:'b'
}]
this.DataForm = this.generateFormControls(this.FormData);
}
generateFormControls(formData: any)
{
let tempGroup: FormGroup = new FormGroup({});
formData.forEach(i=>{
tempGroup.addControl(i.name, new FormControl(''))
})
return tempGroup;
}
PreviewData()
{
this.payLoad = JSON.stringify(this.DataForm.value);
}
}