在转发器中,我显示一些记录,其中包含一些数据,输入字段和每行中的span标记。当用户在输入字段中输入数值时,
我想对其进行计算并在span
标记中显示结果。这将在使用ng-keyup
我试过这个,但它不起作用,可能是因为我没有正确使用模型......
<div ng-repeat="bet in $ctrl.bets">
<input class="form-control input-sm" ng-model="$index" type="text" ng-keyup="$ctrl.getReturn($index)">
<span>Return: </span><span id="$index" ng-model="$index"></span>
</div>
在我的控制器中我有这个
vm.getReturn = function(index){
document.querySelector('#' + index ).html(value / 2);
}
我知道它的方法,但有人可以告诉我该怎么做? TA
答案 0 :(得分:1)
您只能使用ng-model
input
,select
&amp;特殊引导组件,不是span
元素。您可以使用ng-bind
单向绑定值。
其他事情是不要与$index
一起玩,这是添加&amp;由ng-repeat
指令本身管理。我要在bet
内添加新属性(bets
的每个元素)。
<强>标记强>
<div ng-repeat="bet in $ctrl.bets">
<input class="form-control input-sm" ng-model="bet.myValue" type="text" ng-keyup="$ctrl.getReturn(bet.myValue)">
<span>Return: </span><span id="$index" ng-bind="vm.getReturn(bet.myValue)"></span>
</div>
相应地管理getReturn
函数中的计算。
vm.getReturn = function(val) {
return (val > 0 ? (val / 2): 0);
}