Я создал страницу, содержащую текстовые поля, переключатели и флажки. Я использую эту страницу для сохранения новых данных или редактирования существующей. Я могу сохранять новые данные, но для редактирования данных страница должна показывать некоторые предопределенные значения, которые она получает от переменной. Я могу получить и установить значения для текстовых полей и переключателей из этой переменной. Но я не могу проверить флажки. У меня есть много флажков, поэтому я использую ng-repeat для значений, которые будут отображаться на странице. Я устанавливаю значения выбранных флажков в массив и передавая это значение моему уровню обслуживания.Установите флажок из значений массива в AngularJS
Ниже приведены мои фрагменты кода:
HTML:
<div id="activityCheckboxList" class="checkboxList">
<div ng-repeat="activity in activities">
<label>
<input type="checkbox" ng-true-value="activity" ng-checked="selection.indexOf(activity) > -1" ng-click="toggleSelection(activity)"/>
<span>{{activity.activityName}}</span>
</label>
</div>
</div>
app.js:
$scope.selection=[];
$scope.getActivities(); //this sets values in $scope.activities which is a list coming from service layer
//Get Selected Activities from Check Boxes
$scope.toggleSelection = function toggleSelection(activity){
var idx = $scope.selection.indexOf(activity);
if(idx > -1){
$scope.selection.splice(idx, 1);
}
else{
$scope.selection.push(activity);
}
};
После этого, при нажатии на подать, я передаю $ scope.selection который будет содержать объекты моей деятельности.
Для редактирования данных я могу поместить данные в выбор []. Но как проверить флажки, используя это, и после этого пользователя следует снова снять или проверить их. Я пробовал использовать foreach loop, но это не помогло.
Заранее спасибо
Большое спасибо! Вы действительно помогли сэкономить много времени. :) – blu3