数组中对象的角度复选框

时间:2017-10-17 19:29:08

标签: javascript angularjs arrays

我有一个包含对象的数组。每个对象都有一个布尔变量(array [i] .check)。我想使用AngluarJS创建一个表,通过单击一个复选框,它直接更改我的数组中特定对象的布尔值。我使用:

 <table> 
    <tr  data-ng-repeat="a in array">
            <td style="width:200px;"> {{a.name}}</td>   
            <td><input type="checkbox"  ng-model="a.check"  ng-checked="a.check"></td>
    </tr>
 </table>

但是每个布尔值的值始终为false。我做错了什么?

1 个答案:

答案 0 :(得分:1)

你能尝试这种单独使用ng-model的方法,我已经创建了一个工作方法的小提琴,应用这个代码,然后与问题分享,我会为你解决它!

&#13;
&#13;
var app = angular.module('myApp', []);

app.controller('MyController', function MyController($scope) {
	$scope.array = [{id:1, name: "test1", changeThisValue: false},{id:2, name: "test2", changeThisValue: true},{id:3, name: "test3", changeThisValue: true},{id:4, name: "test4", changeThisValue: true},{id:5, name: "test5", changeThisValue: true}];
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>
<div ng-controller='MyController' ng-app="myApp">
  <table>
    <tr data-ng-repeat="a in array">
      <td style="width:200px;"> {{a.name}}</td>
      <td>
        <input type="checkbox" ng-model="a.changeThisValue">
      </td>
    </tr>
  </table>
  <pre style="width:100px;white-space: pre-wrap;">{{array}}</pre>
</div>
&#13;
&#13;
&#13;