如何使用ng-repeat从表格中的动态创建的输入框中获取输入值?我在我的html中有这个代码:
<table class="table table-striped" name="progressLogTable">
<thead>
<th>Title</th>
<th>Input</th>
</thead>
<tbody>
<tr ng-repeat="x in progressLog track by $index ">
<td>{{x}}</td>
<td><input type="number" ng-model="dataInput[$index]"></input></td>
</tr>
</tbody>
</table>
单击按钮时,我需要生成文本框内部的值。到目前为止,这是我的JS:
$scope.gettingInputDataFromTrackables = function(){
$scope.dataInput =[];
}
我尝试使用$ index动态创建每个输入的模型,但我相信我使用的不正确。我还尝试将td
生成为:
<td>{{x}}</td>
<td><input type="number" ng-model="progressLog[$index]"></input></td>
但是当我这样做时,它会将我的Title标题绑定到该索引处的输入框的值。总结一下,我只需要与标题对应的输入框的值,该标题也在ng-repeat
中动态添加。
答案 0 :(得分:1)
这是一个简单的修复。在我的功能中:
$scope.gettingInputDataFromTrackables = function(){
$scope.dataInput =[];
console.log($scope.dataInput);
}
每次点击时我都在初始化$scope.dataInput = []
,导致数据被清除,我记录了一个空数组。这并没有打击我最长的时间。 修复:
$scope.dataInput =[];
$scope.gettingInputDataFromTrackables = function(){
console.log($scope.dataInput);
}
是的,这就是全部。我刚刚在函数范围之外声明了$scope.dataInput
。简单的错误和更容易修复。