javascript - 如何在 angularjs 的 ng-repeat 中正确使用复选框?

标签 javascript angularjs checkbox

我正在为一个应用程序使用 ionic 框架和 angularjs。我在 ng-repeat 中使用复选框。问题是,如果我选中该复选框,它就会被添加到数组中。如果我取消选中它不会从该数组中删除。

html代码是

<div class="action-checkbox" ng-repeat="task in alltasks">
  <h3>{{task.taskName}}</h3>
  <ul>
    <li ng-repeat="subtask in task.subTasks" ng-click="addList(task,subtask)">
      <input id="{{task._id}}_{{subtask._id}}" name="{{task._id}}_{{subtask._id}}" type="checkbox" value="{{subtask.subTaskName}}" ng-checked="subtask.checked" ng-model="slectedTasks" class="hide"/>
      <label for="{{task._id}}_{{subtask._id}}" > 
        {{subtask.subTaskName}}
      </label>
    </li>
  </ul>
</div>

我的 Controller 代码是

$scope.addList = function(task,subtask){
       subtask.checked= !(subtask.checked);
       var data = {
       "task_id": task._id,
       "subTaskName": subtask.subTaskName,
    };     
        if(subtask.checked){
         selectedMap.push(data);
        }
    }

谁能帮我解决这个问题..

最佳答案

添加代码也可以删除元素。

if(subtask.checked == false){
             for(var i = selectedMap.length - 1; i >= 0; i--) {
                  if(selectedMap[i] === data) {
                        selectedMap.splice(i, 1);
                      }
                  }
            }

关于javascript - 如何在 angularjs 的 ng-repeat 中正确使用复选框?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34391211/

相关文章:

javascript - java中的加载效果

javascript - AngularJS自定义指令在继承父范围的同时访问模板中的属性

windows - 复选框 - 更改通知

javascript - 遍历列表中的对象并返回唯一值

javascript - 操纵 Google 结果页面以添加有关 RHS 的部分

javascript - 更新提交上的范围变量并更新 Angular js中的 View

javascript - 使用 Angular js 嵌入 Html 页面

javascript - Electron 上的 "Never ask again"功能dialog.showMessageBox 方法

php - 如何在android和php中将选定的多个复选框值插入到mysql数据库的不同行中

javascript - 将 Slick 旋转木马导航箭头与幻灯片图像而不是其下方的文本垂直对齐