0

我有这个输入:如何让ng模型使用ng值工作?

<input type="number" id="totWeight" ng-model="totWeight" ng-value="getTotWeight()" /> 

该值是基于其他字段计算的,但它也可以经由输入字段手动插入。

问题是,当它被计算时,ng-model保持为空,所以我试图在将数据发送到服务器时分配计算值if (!$scope.totWeight),这不是最优的。此外,如果我通过输入字段插入一个值,然后更改上述触发getTotWeight()函数的其他字段,则$scope.totWeight的值将不会被上面的if (!$scope.totWeight)更新。

对不起,我不知道该如何解释。希望有人能帮助我。

回答

1

的NgValue指令的目的是作为​​说

它主要用于对输入[无线电]和选项元素,因此,当 被选择的元素,该元素的ngModel(或其选择 父元素)设置为绑定值。

所以当使用输入类型“数字”时,你不应该使用它,因为它的值实际上是在NgModel中。

如果你想在输入改变时触发一个事件,按键是按等,你应该使用NgChange,NgKeypress等来触发该功能。 对于所有情况,该值都将在NgModel中保留。

+0

不确定我应该用ng-change或ng-keypress做什么。我不能像这样在ng-model中放置一个函数:'ng-model =“getTotWeight()”'因为它会给我一个错误。 我应该尝试触发其他输入字段的功能,并填写问题的ng模型输入,然后... – Tomo

+1

@Marucs H:幸运的是,我不需要编写我的问题中的所有代码,因为解决方案很简单如预期。谢谢。 – Tomo