Как использовать ng-model и ng-check вместе для переключателей, внутри ng-repeat
Я пытаюсь получить данные о ролях (JSON) из URL-адреса и с помощью ng-repeat назначить их переключателям (показывает список ролей) и отобразить их в режиме MODAL. Любая опция должна быть выбрана для роли, назначенной в данный момент пользователю.
Когда пользователь меняет выбор и нажимает "ОК", выбранное значение должно быть присвоено объекту, который затем передается в URL-адрес для обновления роли пользователя.
Если я использую,
<div ng-repeat="item in roleDataList">
<input type="radio" ng-model="item" ng-checked="item.RoleId==assignedRoleId?true:null" name="RoleRadioButton" ng-value="item" />
<span>{{item.RoleName}}</span>
</div>
затем он показывает уже назначенные данные по умолчанию, но я не могу получить доступ к выбранным данным,
Если я использую,
<div ng-repeat="item in roleDataList">
<input type="radio" ng-model="$parent.parentRoleId" ng-checked="item.RoleId==assignedRoleId?true:null" name="RoleRadioButton" ng-value="item" />
<span>{{item.RoleName}}</span>
</div>
тогда выбранная роль доступна в $parent.parentRoleId
, но значение по умолчанию не выбрано.
Любая помощь, где оба могут быть достигнуты?
1 ответ
Проверьте эту скрипку в значительной степени то, что вы хотите, я думаю
<div ng-controller="Ctrl">
<span ng-repeat="category in categories">
<label class="checkbox" for="{{category.id}}">
<input type="checkbox" ng-model="selection.ids[category.id]" name="group" id="{{category.id}}" />
{{category.name}}
</label>
</span>
<pre ng-bind="selection.ids | json"></pre>
function Ctrl($scope) {
$scope.selection = {
ids: {"50d5ad": true}
};
$scope.categories = [ { "name": "Sport", "id": "50d5ad" } , {"name": "General", "id": "678ffr" } ];
}