Javascript 使用angularjs中选中的复选框值更新数组

Javascript 使用angularjs中选中的复选框值更新数组,javascript,arrays,angularjs,Javascript,Arrays,Angularjs,我有一个数组如下 var selected = []; $scope.listA = [ { name : "Sample 1" }, { name : "Sample 2" }, { name : "Sample 3" } ]; 输入html元素是 <div ng-repeat="label in checkMode()"> <input type="checkbox" checked> {{ label.na

我有一个数组如下

var selected = [];

$scope.listA = [
  {
    name : "Sample 1"
  },
  {
    name : "Sample 2"
  },
  {
    name : "Sample 3"
  }
];
输入html元素是

<div ng-repeat="label in checkMode()">
    <input type="checkbox" checked> {{ label.name }}</input>
</div>

还可以更新阵列

这里有一个简单的轻量级指令可以实现这一点

这很容易

在复选框中添加一次点击功能,希望这能起作用…参考链接



您可以使用
ng checked
实现类似的功能

var-app=angular.module('my-app',[],function(){})
app.controller('AppController',函数($scope){
$scope.selected=['Sample 2'];
$scope.listA=[{
名称:“样本1”
}, {
名称:“样本2”
}, {
名称:“样本3”
}];
$scope.toggleChecked=函数(项){
var index=$scope.selected.indexOf(item.name);
如果(索引==-1){
$scope.selected.push(item.name);
}否则{
$scope.selected.splice(索引1);
}
}
})

{{label.name}
{{selected}}

可能对你有帮助
{{label.name}}你能分享一把小提琴吗?
var selected = ["sample 1","sample 3"];
<div ng-repeat="label in checkMode()">
   <input type="checkbox" checked ng-click="toggleSelection(label.name)> {{ label.name }}</input>
</div>
$scope.listA = {
    name : "Sample 1"
  },
  {
    name : "Sample 2"
  },
  {
    name : "Sample 3"
  }
];

$scope.selected=[];

  $scope.toggleSelection = function toggleSelection(selected) {
    var idx = $scope.selected.indexOf(selected);

    // is currently selected
    if (idx > -1) {
      $scope.selected.splice(idx, 1);
    }

    // is newly selected
    else {
      $scope.selected.push(fruitName);
    }
  };