我有这个object
:Angularjs - 'NG-model`在多维数组
[{
'name': '2015',
'section': '001',
'subsections': [{
subsection:'aa',
mainelements: ['cc','dd']
},{
subsection:'bb',
mainelements: ['ee','ff']
}]
}]
,我可以在html
<body>
<button ng-click="new()">New</button>
<ul>
<li ng-repeat="audit in audits">
<span ng-hide="editing"><h5>{{audit.name}}</h5></span></br>
<input ng-show="editing" type="text" ng-model="audit.name" size="30" placeholder="add name here"></br>
<span ng-hide="editing">{{audit.section}}</span></br>
<input ng-show="editing" type="text" ng-model="audit.section" size="30" placeholder="add section here"></br>
<ul>
<li ng-repeat="subsection in audit.subsections">
<span ng-hide="editing">{{subsection.subsection}}</span></br>
<input ng-show="editing" type="text" ng-model="subsection.subsection" size="30" placeholder="add subsection here"></br>
<ul>
<li ng-repeat="mainelement in subsection.mainelements">
<span ng-hide="editing">{{mainelement}}</span></br>
<input ng-show="editing" type="text" ng-model="mainelement" size="30" placeholder="add mainelement here"></br>
</li>
</ul>
</li>
</ul>
<div id="buttons">
<button type="button" ng-hide="editing" ng-click="editing = true">Edit</button>
<button type="button" ng-show="editing" ng-click="editing = false">Save</button>
</div>
</li>
</ul>
</body>
显示他们。但问题是,我需要所有ng-model
以便我可以单独编辑它们。在这种情况下,只有audit.name
和audit.section
是动态的。但是subsection.subsection
和main element
都没有。
当我这样做:
$scope.logging = function(i) {
var editaudit = $scope.audits[i];
console.log(editaudit.name);
console.log(editaudit.section);
console.log(editaudit.subsections);
console.log(editaudit.subsections.mainelements);
}
,并得到这个
[Log] 2015
[Log] market map
[Log] [{subsection: "aa", mainelements: ["cc", "dd"], $$hashKey: "object:9"}, {subsection: "bb", mainelements: ["ee", "ff"], $$hashKey: "object:10"}]
[Log] undefined
- 我我可以得到所有
ng-model
是动态的? - 如何访问
mainelement
这是Key-value
表单中的对象?
更新:
我设法让我的所有元素展现出来:
<!--Html -->
<ul>
<li class="bitcard" ng-repeat="subsection in audit.subsections">
<span ng-hide="editing">{{audit.subsections[$index].subsection}}</span></br>
<input ng-show="editing" type="text" ng-model="audit.subsections[$index].subsection" size="30" placeholder="add subsection here"></br>
<ul>
<li class="bitcard" ng-repeat="mainelements in audit.subsections[$index].mainelements">
<span ng-hide="editing">{{mainelements}}</span></br>
<input ng-show="editing" type="text" ng-model="mainelements" size="30" placeholder="add mainelement here"></br>
</li>
</ul>
</li>
</ul>
但现在的问题是ng-model="mainelements"
在5日最后一行是不是唯一的。有没有办法像$index02
这样的第二个索引或其他替代方法来做到这一点?
你可以提供一个笨蛋,因为一切对我来说都很好...... –
当你说全部变得动态时,我不明白。请更具体。关于访问元素,如果要访问每个成员,可以使用ng-model =“mainelement [0]”和ng-model =“mainelement [1]”。 –
另外请注意,使用ngShow和ngHide指令以及3ngRepeats中的很多内容会严重影响角度应用程序的性能。 –