我想从 2 个输入(NUM_PRECIO_UNITARIO 和 NUM_PORCENTAJE_IVA)获取值,并在其他输入(NUM_VALOR_IVA)中显示乘法结果实际上这是我的 html
文件.html
<div class="form-group col-sm-5">
<mat-form-field>
<input matInput type="number" formControlName="NUM_VALOR_IVA" placeholder="Valor IVA" value="{{formDetalleOC.get('NUM_PRECIO_UNITARIO').value * formDetalleOC.get('NUM_PORCENTAJE_IVA').value}}" required>
</mat-form-field>
</div>
文件.ts
ngOnInit() {
this.createControlItemOC
}
createControlItemOC() {
this.formDetalleOC = this.fb.group({
NUM_PRECIO_UNITARIO: 0,
NUM_PORCENTAJE_IVA: 0,
NUM_VALOR_IVA: 0,
})
}
这是前面的结果
但在我的表单中,值没有改变
最佳答案
在函数中创建以乘以组件类中的这些值
calcResult() {
const o = this.formDetalleOC.get('NUM_PRECIO_UNITARIO').value * this.formDetalleOC.get('NUM_PORCENTAJE_IVA').value;
this.formDetalleOC.patchValue({ NUM_VALOR_IVA: o });
return o;
}
在 HTML 模板中,调用该函数:
<div class="form-group col-sm-5">
<mat-form-field>
<input matInput type="number" formControlName="NUM_VALOR_IVA" placeholder="Valor IVA" [value]="calcResult()" required>
</mat-form-field>
</div>
PS:如果您正在使用 FormBuilder
,请不要将 ngModel
用于您的表单输入(您可以将它用于同一页面上的其他内容)。
关于javascript - 乘法两个输入 Angular ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47947142/