使复选框成为必需的AngularJS

Sky*_*ker 6 html javascript checkbox angularjs

我有一个表单,用户必须通过复选框回答问题.复选框很少,我在表单中使用AngularJS来验证它.基本验证是填写所有必填字段.

以下是我的示例代码:

<input type="checkbox" name="skills"> IT
<input type="checkbox" name="skills"> Design
<input type="checkbox" name="skills"> Photoshop
<input type="checkbox" name="skills"> Writing
Run Code Online (Sandbox Code Playgroud)

现在我想要复选框是必需的,所以从"技能"复选框,用户至少检查1框.

我已经尝试过贴required标签,但似乎没有用.

我正在使用AngularJS来验证我的表单

<button ng-disabled="myForm.$invalid">Submit</button>
Run Code Online (Sandbox Code Playgroud)

知道如何解决这个问题吗?如果你可以工作小提琴那么棒.

fat*_*ema 2

如果您想使用 ng-disabled="myForm.$invalid" 进行验证

  var app = angular.module('myModule', []);

        app.controller("myController", function ($scope) {
            $scope.choices = [{"name":"IT"},{"name":"Design"},{"name":"Technology"}];
            $scope.checkBoxArray = [];
            $scope.validate = function (value) {
                if ($scope.checkBoxArray.indexOf(value) == -1){
                    $scope.checkBoxArray.push(value);
                }
                else {
                    $scope.checkBoxArray.splice($scope.checkBoxArray.indexOf(value), 1);
                }
            }
        });
Run Code Online (Sandbox Code Playgroud)
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>
<html ng-app="myModule">
  <body ng-controller="myController">
<ng-form name="myForm">
    <span  ng-repeat="choice in choices">
        <input type="checkbox" name="skills" ng-required="checkBoxArray.length==0" ng-model="choice.checked" ng-change="validate(choice.name)">
        {{choice.name}}
    </span>
</ng-form>
<button ng-disabled="myForm.$invalid">Submit</button>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)