Javascript angularjs:ng模型双对象
我尝试实现双嵌套对象。(下面的例子) 问题是我当前的代码正在对象内部生成数组Javascript angularjs:ng模型双对象,javascript,angularjs,Javascript,Angularjs,我尝试实现双嵌套对象。(下面的例子) 问题是我当前的代码正在对象内部生成数组 <div ng-if="newResultUnits()" ng-repeat="set in sets" ng-model="newexercise.sets[$index]"> <label>Set {{$index+1}}</label> <label>
<div ng-if="newResultUnits()" ng-repeat="set in sets" ng-model="newexercise.sets[$index]">
<label>Set {{$index+1}}</label>
<label>
<label>
<input type="text" ng-repeat="resultUnit in newResultUnits()" ng-model="newexercise.sets[$parent.$index][$index].value" placeholder="{{resultUnit.name}}">
</label>
</label>
</div>
应该是这样的:(请注意double[[
和缺少的0:
)
如果我混合了数组和对象,我很抱歉。谢谢!您需要正确初始化数据结构。因此,在控制器中,从
$scope.newexercise = { sets: [] };
所以Angular知道您希望$scope.newexercise
成为一个数组。然后在模板中,在每个内部循环上使用ngInitng init=“newexercise.sets[$parent.$index]=[]”
:
集合{{$index+1}
演示:集合最初是什么?您好,谢谢您的回答。$scope.sets只是一个空数组。当用户想要添加更多集合时,项目将被推送到其中。简单动态表单:)或者您的意思是什么?就是它!非常感谢!欢迎您。如果您计划在内部re中添加更多字段,这里还有一个变体泥炭:
{
"name": "MultiTest",
"sets": [
[
{
"value": "10",
"name": "Kg"
},
{
"value": "10",
"name": "Wdh"
}
]
]
}
$scope.newexercise = { sets: [] };
<div ng-repeat="set in sets">
<label>Set {{$index+1}}</label>
<label>
<label>
<input type="text"
ng-repeat="resultUnit in newResultUnits()"
ng-init="newexercise.sets[$parent.$index] = []"
ng-model="newexercise.sets[$parent.$index][$index].value"
placeholder="{{resultUnit.name}}">
</label>
</label>
</div>