2017-02-13 4 views
0

http://jsfiddle.net/32m1mbkL/使用NG-モデルは

をANGULAR.JS私は動的にNGリピートして作成していますチェックボックスのシリーズを持っています。 trueまたはfalseの値に応じて、各チェックボックスをマークします。しかし、私はマークを付けることはできませんし、マークが付いているときはマークされます。 私は何が間違っていますか?

<div ng-controller="Ctrl"> 
    <div class="wrapper"> 
     <div class="container-fluid"> 
      <table border='1'> 
      <tr> 
       <th rowspan="3">Tipo de Contenido</th> 
       <th colspan="{{aTipoUsuarios.length * 3}}"> 
       Tipo de Usuarios 
       </th> 
      </tr> 
      <tr> 
      <td ng-repeat="usu in aTipoUsuarios" colspan="3"> 
       {{usu}} 
      </td> 
      </tr> 
      <tr> 
       <td ng-repeat-start="usu in aTipoUsuarios" ><i class='glyphicon glyphicon-book' tile='Permiso de Lectura'></i></td> 
       <td ><i class='glyphicon glyphicon-pencil' tile='Permiso de Escritura'></i></td> 
       <td ng-repeat-end><i class='glyphicon glyphicon-trash' tile='Permiso de Eliminación'></i></td> 
      </tr> 
      <tr> 
      <tr ng-repeat="rol in aRoles"> 
      <td>{{rol.tipo_contenido}}</td> 
      <td ng-repeat-start='check in rol.tipo_usuario'> 
       <input type="checkbox" ng-model='rol.lectura' class="form-control"> 
      </td> 
      <td> 
       <input type="checkbox" ng-model='rol.escritura' class="form-control"> 
      </td> 
      <td ng-repeat-end> 
       <input type="checkbox" ng-model='rol.eliminacion' class="form-control"> 
      </td> 
      </tr> 
      </table> 
     </div> 
    </div> 
    </div> 

$scope.aRoles= 
    [ 
     { 
     "tipo_contenido": "articulos", 
     "tipo_usuario":{ 
      "administrador": 
      {"escritura":true, "lectura":true, "eliminacion":true}, 
      "reportante": 
      {"escritura":true, "lectura":false, "eliminacion":true} 
     }  
     }, 
     { 
     "tipo_contenido": "informacion", 
     "tipo_usuario":{ 
      "administrador": 
      {"escritura":true, "lectura":false, "eliminacion":true}, 
      "reportante": 
      {"escritura":false, "lectura":true, "eliminacion":false} 
     }  
     }, 
    ]   
    $scope.aTipoUsuarios=Object.keys($scope.aRoles[0].tipo_usuario); 

答えて

1

ng-model定義は常に同じオブジェクトを指しています。

<input type="checkbox" ng-model='rol.lectura' class="form-control"> 

あなたが実際に正しい場所にループあなたのリピータにcheckを持っているので、あなただけの正しい参照を取得するためにcheckrolを交換する必要があります。

<input type="checkbox" ng-model='check.lectura' class="form-control"> 

ここで私が必要あなたのfixed fiddle

+0

です – yavg

+0

'rol'を' check'に置き換えるとうまくいくはずです。私は答えを更新する – casraf

+0

あなたは最高です!ありがとうございました! – yavg

関連する問題