在检查了各种Stackoverflow资源之后,看起来我仍然无法弄清楚Angular这样做的方法。 HTML表格只有一个Id列和另一个文本列(输入框),通过ng-repeat动态填充。然后我为显示内部输入框的每个单独记录提供“更新”和“删除”功能/按钮。 '删除'功能似乎没问题,在'删除'按钮上单击我只是将ID作为参数传递给函数。使用'update'click事件,我不知道如何将输入框的值作为第二个参数传递给函数。请参阅下面的简化标记和代码。
<tr ng-repeat="rec in allRecords">
<td>{{rec.Id}}</td>
<td>
<button ng-click="update(rec.Id, HERE_TEXT_FROM_SIBLING_INPUT')">Update</button>
<input type="text" value="{{rec.Name}}">
<button ng-click="deleteMonitorGroup(rec.Id)">Delete</button>
</td>
和控制器
app.controller('MyCtrl', function (MyService, $scope) {
MyService.listAllRecords(function (allRecs) {
$scope.allRecords= allRecs;
});
$scope.update = function (Id, text) {
MyService.update(Id, text, function () {
// update record
});
}
});
感谢任何帮助。
答案 0 :(得分:3)
在ng-model
等输入字段上使用ng-model="rec.Name"
,通过有角度的双向绑定功能更新rec.Name
。然后通过ng-model
&#39; s {{1更新函数 OR 而不是仅仅在函数调用上传递rec.Name
对象,以使其更简单。
<强>标记强>
rec