将复选框的值分配给 FormControlName (Angular)
Assign the value of a checkbox to a FormControlName (Angular)
我有一个反应式表单,想获取复选框的值(不是 'true' 或 'false')并将其分配给 formControlName (selectedSizeValueControl)。
我尝试了一些方法,但它们对我不起作用。
有人可以帮忙吗?
代码:
<form [formGroup]="variantForm" (ngSubmit) = "submit()">
<mat-checkbox value="{{selectedSizeValue}}" formControlName = "selectedSizeValueControl" >{{selectedSizeValue}}</mat-checkbox>
<mat-radio-button value="{{sale_preis.value}}"><input type="text" #sale_preis formControlName ="sale_preis"></mat-radio-button>
<button >save</button>
</form>
component.ts
selectedSizeValues: string;
variantForm = new FormGroup({
selectedSizeValueControl: new FormControl(),
sale_preis: new FormControl() });
submit(){
console.log(this.variantForm.value);
}
selectedSizeValueControl 只接受 TRUE 或 FALSE,我希望它接受 selectedSizeValue 的值(例如:字符串)
谢谢大家!
mat-checkbox
只能处理true或false,不会取字符串。将元素更改为 input
或将 selectedSizeValues
的类型更改为布尔值。
我成功了。
- 不要将 formControlName 与值一起使用
- 使用 属性 出价 [value]="selectedSizeValue" 而不是 value = {{selectedSizeValue}}
- 我从复选框中获取值并通过 component.ts 中的函数将其分配给 formControlName。就是这样。
<form [formGroup]="variantForm" (ngSubmit) = "submit()">
<input type="checkbox" [value]="selectedSizeValue" (change)="GetStats($event)" >
<mat-radio-button value="{{sale_preis.value}}"><input type="text" #sale_preis formControlName ="sale_preis"></mat-radio-button>
<button >save</button>
</form>
component.ts
selectedSizeValues: string;
test: string ='';
variantForm = new FormGroup({
selectedSizeValueControl: new FormControl(),
sale_preis: new FormControl() });
submit(){
this.variantForm.value.selectedSizeValueControl = this.test;
}
GetStats(event: Event) {
console.log(event);
// @ts-ignore
this.test = event.target.value;
console.log(this.test);
}
我有一个反应式表单,想获取复选框的值(不是 'true' 或 'false')并将其分配给 formControlName (selectedSizeValueControl)。
我尝试了一些方法,但它们对我不起作用。
有人可以帮忙吗?
代码:
<form [formGroup]="variantForm" (ngSubmit) = "submit()">
<mat-checkbox value="{{selectedSizeValue}}" formControlName = "selectedSizeValueControl" >{{selectedSizeValue}}</mat-checkbox>
<mat-radio-button value="{{sale_preis.value}}"><input type="text" #sale_preis formControlName ="sale_preis"></mat-radio-button>
<button >save</button>
</form>
component.ts
selectedSizeValues: string;
variantForm = new FormGroup({
selectedSizeValueControl: new FormControl(),
sale_preis: new FormControl() });
submit(){
console.log(this.variantForm.value);
}
selectedSizeValueControl 只接受 TRUE 或 FALSE,我希望它接受 selectedSizeValue 的值(例如:字符串)
谢谢大家!
mat-checkbox
只能处理true或false,不会取字符串。将元素更改为 input
或将 selectedSizeValues
的类型更改为布尔值。
我成功了。
- 不要将 formControlName 与值一起使用
- 使用 属性 出价 [value]="selectedSizeValue" 而不是 value = {{selectedSizeValue}}
- 我从复选框中获取值并通过 component.ts 中的函数将其分配给 formControlName。就是这样。
<form [formGroup]="variantForm" (ngSubmit) = "submit()">
<input type="checkbox" [value]="selectedSizeValue" (change)="GetStats($event)" >
<mat-radio-button value="{{sale_preis.value}}"><input type="text" #sale_preis formControlName ="sale_preis"></mat-radio-button>
<button >save</button>
</form>
component.ts
selectedSizeValues: string;
test: string ='';
variantForm = new FormGroup({
selectedSizeValueControl: new FormControl(),
sale_preis: new FormControl() });
submit(){
this.variantForm.value.selectedSizeValueControl = this.test;
}
GetStats(event: Event) {
console.log(event);
// @ts-ignore
this.test = event.target.value;
console.log(this.test);
}