您好,欢迎访问一九零五行业门户网

在AngularJS中如何动态添加数据并删除?

下面我就为大家分享一篇angularjs动态添加数据并删除的实例,具有很好的参考价值,希望对大家有所帮助。
如下所示:
<!doctype html> <html lang="en" ng-app="app"> <head> <meta charset="utf-8"> <title>todolist</title> <style> body { padding: 0; margin: 0; } .todo { width: 300px; margin: 100px auto; } .todo dd { overflow: hidden; } .todo input[type="checkbox"] { float: left; } .todo a { float: right; } </style> </head> <body> <p class="todo" ng-controller="todolistcontroller"> <form ng-submit="additem()"> <label for="">添加事项</label> <input type="text" ng-model="todo"> </form> <dl> <dt>待办事项</dt> <dd ng-repeat="todo in todos track by $index"> <input type="checkbox" ng-checked="todo.checked" ng-click="done($index, $event)"> {{todo.text}} <a ng-href="" ng-click=" rel="external nofollow" rel="external nofollow" delete($index, todos)">删除</a> </dd> <dt>已办事项{{donetodos.length}}</dt> <dd ng-repeat="todo in donetodos track by $index"> <input type="checkbox" ng-checked="todo.checked" ng-click="undone($index, $event)"> {{todo.text}} <a ng-href="" ng-click=" rel="external nofollow" rel="external nofollow" delete($index, donetodos)">删除</a> </dd> </dl> </p> <script src="./libs/angular.min.js"></script> <script> // 定义一个模块 var app = angular.module('app', []); // 定义一个控制器 app.controller('todolistcontroller', ['$scope', function($scope) { // 待办事项 $scope.todos = []; // 已完成事项 $scope.donetodos = []; // $scope.todo = ''; // 回车时调用ng-submit,往待办事项中添加数据 $scope.additem = function () { // 向数组中添加数据 $scope.todos.push({text:$scope.todo, checked: false}); // 清空输入框 $scope.todo = ''; } // 勾选时完成 $scope.done = function (index, ev) { // console.log(index); // console.log($scope.todos); // 从待办事项中删除 var tmp = $scope.todos.splice(index, 1); tmp[0].checked = !tmp[0].checked; // 将删除的事项添加到已完成里 $scope.donetodos = $scope.donetodos.concat(tmp); ev.preventdefault(); } // 取消已完成 $scope.undone = function (index, ev) { // 从已完成数据中删除 var tmp = $scope.donetodos.splice(index, 1); tmp[0].checked = !tmp[0].checked; // 将事项添加到待办事项中 $scope.todos = $scope.todos.concat(tmp); // ev.preventdefault(); } // 删除事项,传递当前索引和完整数据 $scope.delete = function (index, todos) { // $scope.donetodos.splice(index, 1); // console.log(todos); // 删除索引值对应的事项 todos.splice(index, 1); } }]) // var arr = [0, 1, 2, 3, 4]; // arr.splice(2,1) </script> </body> </html>
上面是我整理给大家的,希望今后会对大家有帮助。
相关文章:
详细讲解fastclick源码(详细教程)
利用vue和element-ui如何实现表格内容分页
利用vue如何实现将时间戳转换成自定义时间格式
以上就是在angularjs中如何动态添加数据并删除?的详细内容。
其它类似信息

推荐信息