Как использовать 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" } ];

}

Другие вопросы по тегам