【发布时间】:2015-03-29 13:09:58
【问题描述】:
<div ng-repeat="class in classses">
<p>{{class.className}}</p>
<form novalidate>
<div ng-repeat="studentInput in class.students track by $index">
<input type="text" ng-model="studentInput[$index]" typeahead="student as (student.lastName + ', ' + student.firstName) for student in findStudents($viewValue)"/>
</div>
<button type="button" ng-click="addStudent(class)">Add Student</button>
</form>
</div>
在我的控制器中:
$scope.addStudent = function(class){
class.students.push({});
}
我正在使用 angular bootstrap 中的 typeahead,因此它会返回学生对象,然后我想将这些对象添加到表单所属的任何类的学生数组中。
数据是一堆类对象,每个类对象都有一个学生属性,该属性是一组学生对象。此时,正在将一个学生对象添加到另一个对象。所以看起来,[0:{firstName: "first", lastName: "last", ...}] 而不是 [{firstName: "first", lastName: "last", ...}]
这是一种很好的方法吗?为什么要将对象嵌套在对象中?
【问题讨论】:
标签: angularjs forms dynamic input typeahead