我有一个动态表,可根据用户选择创建行数。表格中的每一行都有数字输入框。例如,如果我有一个包含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
 }


有没有一种方法可以将索引与inputValue一起传递给updateRedScore?

最佳答案

为了完成将来可能对其他人有帮助的问题/答案,应在方法中添加$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
}

09-26 08:55