Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Angularjs modal使用复选框表现怪异_Javascript_Angularjs - Fatal编程技术网

Javascript Angularjs modal使用复选框表现怪异

Javascript Angularjs modal使用复选框表现怪异,javascript,angularjs,Javascript,Angularjs,我有一个角度的应用程序在这 当我们点击按钮时,它会打开一个模式对话框,其中有一个项目列表。其中2项是根据复选框表输入中的条件预先选中的 这是推动和拼接的功能: $scope.toggleCheck = function (course) { //debugger var x = $scope.checkplanneddetails(course); if ($scope.selectedCourses.indexOf(course) === -1){ $s

我有一个角度的应用程序在这

当我们点击按钮时,它会打开一个模式对话框,其中有一个项目列表。其中2项是根据复选框表输入中的条件预先选中的

这是推动和拼接的功能:

$scope.toggleCheck = function (course) {
    //debugger
    var x = $scope.checkplanneddetails(course);
    if ($scope.selectedCourses.indexOf(course) === -1){
        $scope.selectedCourses.push(course);
        $scope.planned += 3;
    } else {
        $scope.selectedCourses.splice($scope.selectedCourses.indexOf(course), 1);
        $scope.planned -= 3;
    }

    $scope.getPercentage();
};
当从该列表中选择(选中)一个课程时,它会将3添加到
$scope.planned
中,并相应地增加进度条。同样,当复选框未选中时,它也会以相同的方式减少


但是,当模式对话框加载时,对于已选中的项目,则相反。代码哪里出错了?

问题是您试图在Attential数组中保留复选框的状态。相反,您应该只使用“ng-”指令(如ng模型,或选中ng复选框)

这是我的修改:

        $scope.toggleCheck = function (course) {
            //debugger
                if(course.checked){
                    $scope.planned += 3;
                } else {
                    $scope.planned -= 3;
                }


                $scope.getPercentage();
        };

我还将“ng clicked”改为“ng changed”,因为第一个选项是在实际更改值之前触发的

$scope.selectedCourses在第一次单击复选框时是空的,即使其中一些是预选的。我如何避开它?mpttid.subcategory在您的plunkr中未定义,所以填充所选课程的forEach没有被填满。你能帮我一下吗?我还有一个问题,取消选中requirements.json中的课程是否应该在模式中选中?我认为你的劫掠者没有所有必要的数据来帮助你。