Javascript 基于复选框的动态数据绑定列表
我有一个角度的应用程序在这 在此按钮打开一个具有表格的模式。选中或取消选中表中的项目时,它会相应地更改进度栏中的值 下表列出了所有已检查课程的列表。如何相应地绑定此数据,以便选中复选框时,它也会动态显示此列表中的项目?以下是我用于显示此项目列表的代码:Javascript 基于复选框的动态数据绑定列表,javascript,angularjs,Javascript,Angularjs,我有一个角度的应用程序在这 在此按钮打开一个具有表格的模式。选中或取消选中表中的项目时,它会相应地更改进度栏中的值 下表列出了所有已检查课程的列表。如何相应地绑定此数据,以便选中复选框时,它也会动态显示此列表中的项目?以下是我用于显示此项目列表的代码: <div ng-repeat="child in selectedCourses"> {{child.course.subject}}-{{child.course.course_no}}
<div ng-repeat="child in selectedCourses">
{{child.course.subject}}-{{child.course.course_no}}
</div>
{{child.course.subject}-{{child.course.course{u no}
问题在于您多次将相同的项目推入$范围。selectedCourses
,这会导致错误(因为ngRepeat
ed项目中存在重复值),从而导致视图无法更新
要防止多次添加同一项,应检查该项是否已存在于数组中:
$scop.checkplanneddetails = function (course) {
...
for (var k = 0; k < $scope.planneddetails.length; k++) {
if ($scope.requirementcoursename==$scope.planneddetails[k].course_name) {
if (!$scope.checkcoursefunction($scope.selectedCourses, course)) {
// ONLY add the course if it is NOT already present
$scope.selectedCourses.push(course);
}
course.checked = true;
return true;
}
}
return false;
};
另请参见,此对于新检查的值非常有效。但是,当我取消选中ENVR-1402时,它并不是在拼接它。我写的代码中还有其他错误吗?我忘了提到你应该检查我更新的ANWR,但显然你已经检查了:)嗨,我在其中一个问题上遇到了一些问题。你能帮忙吗?
<!-- Change that: -->
<input type="checkbox" ng-checked="checkplanneddetails(child)" ... />
<!-- To this: -->
<input type="checkbox" ng-init="checkplanneddetails(child)" ... />