<div class="form-group" data-ng-repeat="choice in choices">
<input type="text" ng-model="user.subjectname[$index]"
name="subject" ng-required="true" placeholder="Enter a subject name">
</div>
当我使用ng-repeat动态创建此输入字段时,如果我使用ng-model=user.subjectname
,输入文本由于某种原因在所有字段中都相同,我通过互联网搜索并找到ng-model="user.subjectname[$index]"
正在使用并且有效。
然而,我无法理解
2.如果是阵列或物体。 ?
它在控制台中显示为对象。
如果是对象,为什么会有索引?
此外,我们可以使用以下格式迭代对象:
ng-repeat="(key,val) in user.subjectname"{{val}}
为什么不起作用?
neither did ng-repeat="subject in user.subjectname"{{subject}}
我可以取得指示,因为我现在对此非常困惑。
答案 0 :(得分:1)
这是一个数组。当你这样做时:
var test = []; console.info(typeof test);// You would get object as arraysa re also object in Javascript.
在这里,您将选择中的$ index选择传递给subjectname数组。哪个好。在使用某些数据填充主题名称后,您可以使用ng-repeat,如
ng-repeat = "subject in user.subjectname"
同时初始化user.subjectname = [];在控制器
答案 1 :(得分:0)
<form class="idea item">
<div ng-repeat="(key, value) in items[0]" >
<label>{{key}}</label>
<input type="range" ng-model="items[0][key]" min="0" max="15"/>
</div>
<input type="submit" ng-click="save()" />
<pre>{{items | json}}</pre>
var app = angular.module('my-app',[],function(){ })
app.controller('AppController', function ($scope) {
$scope.items = [{"red": 14, "green": 12, "orange": 1, "yellow": 11, "blue": 9}];
})