我从ng-repeat创建了一些动态输入。
我只想知道如何获取html中每个动态生成的输入字段的输入值。 https://jsfiddle.net/a6at8js6/5/
HTML
<div ng-app="mainApp" ng-controller="mainCtrl">
<div ng-repeat="author in author_group" class="authorAndTagGroup">
<div ng-repeat="(key, value) in author">
<label class="col-sm-3 control-label">{{key}}</label>
<input type="text" value="{{value}}">
</div>
</div>
</div>
angularjs
var app = angular.module("mainApp", []);
app.controller('mainCtrl', function($scope){
$scope.authors = [{'author_name': 'akshay', 'about_author':'this is about author', 'author_image':'image url here'}];
$scope.author_group = [];
for (var key in $scope.authors) {
$scope.author_group.push({'Author Name' : $scope.authors[key].author_name, 'About the Author' : $scope.authors[key].about_author, 'Author Image' : $scope.authors[key].author_image, 'Author Linkedin Profile' : '', 'Author Twitter Profile' : ''});
}
console.log($scope.author_group);
});
答案 0 :(得分:3)
将输入文本绑定到作者对象的关键属性。
$apply()
请注意以下ebinmanuval建议的 NOT 工作;这是因为它无法改变底层作者对象,而只是覆盖了value属性。这里的技巧是我们想要将模型绑定到引用类型,就像对象而不是像值类型那样的字符串,这样当我们将模型变为基础类型时也发生了变异:
<input type="text" ng-model="author[key]">