AngularJS动态添加数据并删除的实例


Posted in Javascript onFebruary 27, 2018

如下所示:

<!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>
	
	<div 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>
	</div>
	<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>

以上这篇AngularJS动态添加数据并删除的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
escape、encodeURI 和 encodeURIComponent 的区别
Mar 02 Javascript
javascript string字符串优化问题
Jul 31 Javascript
js给dropdownlist添加选项的小例子
Mar 04 Javascript
原生Ajax 和jQuery Ajax的区别示例分析
Dec 17 Javascript
7个去伪存真的JavaScript面试题
Jan 07 Javascript
node.js 中国天气预报 简单实现
Jun 06 Javascript
微信小程序使用第三方库Underscore.js步骤详解
Sep 27 Javascript
ES6新特征数字、数组、字符串
Oct 01 Javascript
servlet+jquery实现文件上传进度条示例代码
Jan 25 Javascript
VueJS 集成 Medium Editor的示例代码 (自定义编辑器按钮)
Aug 24 Javascript
Angular ui-roter 和AngularJS 通过 ocLazyLoad 实现动态(懒)加载模块和依赖
Nov 25 Javascript
layui table 列宽百分比显示的实现方法
Sep 28 Javascript
JS严格模式知识点总结
Feb 27 #Javascript
总结js函数相关知识点
Feb 27 #Javascript
详解jQuery中的isPlainObject()使用方法
Feb 27 #jQuery
详解Vue Elememt-UI构建管理后台
Feb 27 #Javascript
详解react-native WebView 返回处理(非回调方法可解决)
Feb 27 #Javascript
Vue2.5通过json文件读取数据的方法
Feb 27 #Javascript
vue2.5.2使用http请求获取静态json数据的实例代码
Feb 27 #Javascript
You might like
Zerg建筑一览
2020/03/14 星际争霸
关于php mvc开发模式的感想
2011/06/28 PHP
解析php中mysql_connect与mysql_pconncet的区别详解
2013/05/15 PHP
php批量删除操作代码分享
2017/02/26 PHP
PHP判断是手机端还是PC端 PHP判断是否是微信浏览器
2017/03/15 PHP
jquery 循环显示div的示例代码
2013/10/18 Javascript
JQuery中绑定事件(bind())和移除事件(unbind())
2015/02/27 Javascript
基于JavaScript获取鼠标位置的各种方法
2015/12/16 Javascript
javascript自动切换焦点控制效果完整实例
2016/02/02 Javascript
JavaScript实现简单的日历效果
2016/09/25 Javascript
BootStrap中Table分页插件使用详解
2016/10/09 Javascript
分享Bootstrap简单表格、表单、登录页面
2017/08/04 Javascript
纯js实现页面返回顶部的动画(超简单)
2017/08/10 Javascript
Promise.all中对于reject的处理方法
2018/08/01 Javascript
解决Vue+Element ui开发中碰到的IE问题
2018/09/03 Javascript
深入浅析javascript函数中with
2018/10/28 Javascript
微信小程序实现选项卡效果
2018/11/06 Javascript
vue实现购物车抛物线小球动画效果的方法详解
2019/02/13 Javascript
antd vue table跨行合并单元格,并且自定义内容实例
2020/10/28 Javascript
微信小程序之高德地图多点路线规划过程示例详解
2021/01/18 Javascript
python 随机数使用方法,推导以及字符串,双色球小程序实例
2017/09/12 Python
python使用邻接矩阵构造图代码示例
2017/11/10 Python
Python爬虫爬取新浪微博内容示例【基于代理IP】
2018/08/03 Python
使用Python实现微信提醒备忘录功能
2018/12/04 Python
浅谈tensorflow中张量的提取值和赋值
2020/01/19 Python
Python logging日志库空间不足问题解决
2020/09/14 Python
Python爬虫新手入门之初学lxml库
2020/12/20 Python
印度最好的在线药品订购网站:PharmEasy
2018/11/30 全球购物
zooplus波兰:在线宠物店
2019/07/21 全球购物
个人求职信范文分享
2014/01/06 职场文书
村抢险救灾方案
2014/05/09 职场文书
关于晚自习早退的检讨书
2014/09/13 职场文书
故宫导游词
2015/01/31 职场文书
安全守法证明
2015/06/23 职场文书
2019广播稿怎么写
2019/04/17 职场文书
中国十大神话动漫电影排行榜 哪吒登顶 白蛇缘起排第七
2022/03/21 国漫