AngularJs / Bootstrap - 列表中的绑定复选框无法正常工作

时间:2017-06-05 23:59:26

标签: angularjs html5

我有一个过滤权限列表的角色列表。权限列表有一个复选框,表明它已被选中。

每个角色都有一个关联权限列表。选择角色后,将显示所有可用权限,并检查已与其关联的权限。通过单击每个权限的复选框,您可以将其关联或取消关联。

但是,选择和取消选择权限操作无法正常运行。我无法弄清楚是什么问题。有人能帮我吗 ?感谢!!!

Code in Plunker

网页代码

itertools

控制器代码

 <div class="panel-body">
          <div class="form-group">
            <div class="col-md-6">
              <div class="list-group">
                <a ng-click="selectRole(role)" ng-repeat="role in model.roles" class="list-group-item" ng-class="{active: role.id == model.selectedRole.id}">{{role.name}}</a>
              </div>
            </div>
            <div class="col-md-6">
              <div class="list-group">
                <a ng-repeat="permission in model.permissions" class="list-group-item">{{permission.name}}                  <input type="checkbox" class="pull-right" ng-checked="isSelected(permission.id) > -1" ng-click="clickPermission(permission)" ng-class="{active: permission.id == model.selectedPermission.id}" />
                </a>
              </div>
            </div>
          </div>
        </div>

1 个答案:

答案 0 :(得分:0)

我发现问题是复选框,而功能正常,显示屏不会取消选中&#34;当你点击它时。

可以通过将周围的元素更改为span而不是a

来解决此问题
<span ng-repeat="permission in model.permissions" class="list-group-item">{{permission.name}}                  
    <input type="checkbox" class="pull-right" ng-checked="isSelected(permission.id) > -1" ng-click="clickPermission(permission)" ng-class="{active: permission.id == model.selectedPermission.id}" />
</span>
但是,我不确定这背后的原因。