Я пытаюсь реализовать сценарий, в котором у меня есть древовидная структура, а высота дерева будет равна 2. Каждый элемент будет иметь флажок, и после выбора узла ему также будут выбраны дочерние узлы. Я легко могу сделать это с помощью jquery, но я не могу сделать это в angular.js. Вот демо-скрипт, который, конечно, не работает.
<div ng-app="sampleapp" ng-controller="samplecontoller">
<span ng-repeat="set in countrySet">
<input type="checkbox" ng-model="master" ng-change="isSelectAll()"><label>{{ set.name }}</label><br>
<span ng-repeat="label in labelList">
<input type="checkbox" ng-model="label.selected" ng-change="isLabelChecked()">
<label>{{ label.name }}</label>
</span>
</span>
</div>
Внесите следующие изменения set.
перед ярлыком labelList HTML:
Затем скопируйте $ scope.labelList в каждый набор с angular.forEach
и angular.copy
JS:
angular.forEach($scope.countrySet, function(set){
set.labelList =angular.copy($scope.labelList);
}));