我有一个包含多个复选框的表单,其中我使用ng-repeat显示来自JSON文件的复选框数据。现在,当我提交表单时,我想从复选框中获取已检查的数据。提交表单后如何访问已检查的数据?
我做了一些研究,现在我可以使用ng-model="s.checked"
在页面上显示已检查的数据,但是如何在控制器端访问已检查的数据。
有关详细信息,请参阅此Plunk
答案 0 :(得分:0)
提交时$scope.List
的结构没有改变,它仍然是一个对象数组。你可以做点什么
$scope.submit = function() {
var checkedItems = $scope.List.filter(function(item){
return item.checked;
});
console.log(checkedItems);
};
List
项的值已更改。
(另外,使用ngSubmit)
通常是个好主意答案 1 :(得分:0)
您有多个对象:
$scope.list = [
{"ID":5000,"Name":"ABC",checked:true},
{"ID":5001,"Name":"DEF",checked:false},
{"ID":5002,"Name":"XYZ",checked:false}];
因此您可以访问已检查属性的值,如下所示:
$scope.submit = function() {
var val1 = $scope.list[0].checked;
var val2 = $scope.list[1].checked;
var val3 = $scope.list[2].checked;
}
或者使用forEach
声明:
$scope.submit = function() {
angular.forEach($scope.list, function (listValue) {
var val = listValue.checked;
});
}