我正在用angularJS创建一个具有计算字段的表单,该字段的值由3个数字字段给出,其中一个数字字段是隐藏的,其可见性取决于另一个的输入。
我的问题是,只要第三个字段不可见,就不会显示计算字段的值。
我试图将0设置为隐藏字段的默认值,但这不能解决问题
这是我的代码:
<input type="number" ng-model="currForm.A" name="r_A" required /><br />
<input type="number" ng-model="currForm.B" name="r_B" required /><br />
<div ng-show="currForm.B > '5' ">
<input type="number" ng-model="currForm.C" name="r_C" ng-required="currForm.B > '5' " /><br />
</div>
<label>Risultato A+B+C</label>: <input type="number" ng-model="currForm.risultato"/>
这是我的剧本
$scope.currForm.C = 0;
$scope.$watch(' currForm.A + currForm.B + currForm.C', function (value) {
$scope.currForm.risultato= value;
});
$scope.$watch("currForm.B<'5'",function(){
$scope.currForm.C = "";
});
即使隐藏了第三个输入,有没有办法进行计算?
谢谢你们
最佳答案
您为currForm.C = 0
设置了默认值,但未在watch部分中设置,将第二只手表更改为以下手表,它对我有用:
$scope.$watch("currForm.B<'5'",function(){
$scope.currForm.C = 0;
});