AngularJS将转发器的索引传递给函数

时间:2018-02-07 22:49:36

标签: javascript angularjs

我有一个动态表,可根据用户选择创建行数。然后,表格中的每一行都有数字输入框。例如,如果我有一个包含7行的表,我想将这7个不同的输入存储到数组中。到目前为止,我试图将文本框的输入传递给更新声明的空数组的函数。像这样的东西

HTML

 <td id="{{'redScore'+($index+1)}}">
 <input required="" ng-change="updateRedScore(inputValue)" ng-model="inputValue" type="number" step="1" name="rate" min="1" max="10"> </td>

脚本

$scope.redRoundScore = [];    
$scope.inputValue = null;

$scope.updateRedScore = function(passedscore){
   $scope.redRoundScore[index] = passedscore
 }

我有没有办法将index与inputValue一起传递给updateRedScore?

1 个答案:

答案 0 :(得分:1)

为了完成可能在将来帮助其他人的问题/答案,将$index作为参数添加到该方法应该有效。此外,由于$scope.inputValue = null;变量仅存在于为inputValue创建的范围,因此不需要ng-repeat

HTML:

<td id="{{'redScore'+($index+1)}}">
    <input required 
           ng-change="updateRedScore(inputValue, $index)" 
           ng-model="inputValue" 
           type="number" 
           step="1" 
           name="rate" 
           min="1" 
           max="10">
</td>

JS:

$scope.redRoundScore = [];
$scope.updateRedScore = function(passedscore, index) {
    $scope.redRoundScore[index] = passedscore
}