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 相关文章推荐
JS动画效果代码3
Apr 03 Javascript
jquery中ajax调用json数据的使用说明
Mar 17 Javascript
jQuery的初始化与对象构建之浅析
Apr 12 Javascript
javascript字符串替换及字符串分割示例代码
Dec 12 Javascript
DOM基础教程之使用DOM设置文本框
Jan 20 Javascript
bootstrap实现弹窗和拖动效果
Jan 03 Javascript
从重置input file标签中看jQuery的 .val() 和 .attr(“value”) 区别
Jun 12 Javascript
AngularJS 实现购物车全选反选功能
Oct 24 Javascript
详解node.js中的npm和webpack配置方法
Jan 21 Javascript
微信小程序的mpvue框架快速上手指南
May 15 Javascript
axios异步提交表单数据的几种方法
Aug 11 Javascript
layui输入框中只允许输入整数的实现方法
Sep 18 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
php对二维数组按指定键值key排序示例代码
2013/11/26 PHP
php中mysql连接和基本操作代码(快速测试使用,简单方便)
2014/04/25 PHP
PHP编译安装时常见错误解决办法
2015/05/28 PHP
Laravel 5.5基于内置的Auth模块实现前后台登陆详解
2017/12/21 PHP
关于laravel-admin ueditor 集成并解决刷新的问题
2019/10/21 PHP
onpropertypchange
2006/07/01 Javascript
document.all还是document.getElementsByName?
2006/07/21 Javascript
Prototype使用指南之array.js
2007/01/10 Javascript
jQuery 操作option的实现代码
2011/03/03 Javascript
详解WordPress开发中get_current_screen()函数的使用
2016/01/11 Javascript
JS实现复制内容到剪贴板功能兼容所有浏览器(推荐)
2016/06/17 Javascript
Nodejs进阶:如何将图片转成datauri嵌入到网页中去实例
2016/11/21 NodeJs
canvas实现探照灯效果
2017/02/07 Javascript
教你快速搭建Node.Js服务器的方法教程
2017/03/30 Javascript
vue 计时器组件的实现代码
2017/09/14 Javascript
Angular 向组件传递模板的两种方法
2018/02/23 Javascript
nodejs实现一个word文档解析器思路详解
2018/08/14 NodeJs
基于VUE实现的九宫格抽奖功能
2018/09/30 Javascript
python通过pil为png图片填充上背景颜色的方法
2015/03/17 Python
Python的组合模式与责任链模式编程示例
2016/02/02 Python
浅谈python之新式类
2018/08/12 Python
在pycharm中使用git版本管理以及同步github的方法
2019/01/16 Python
Django数据库类库MySQLdb使用详解
2019/04/28 Python
PyTorch搭建一维线性回归模型(二)
2019/05/22 Python
Python 常用模块 re 使用方法详解
2019/06/06 Python
如何用python处理excel表格
2020/06/09 Python
Python Opencv实现单目标检测的示例代码
2020/09/08 Python
Jogun Shop中文官网:韩国知名时尚男装网站
2016/10/12 全球购物
美国网上眼镜商城:Zenni Optical
2016/11/20 全球购物
院药学专业个人求职信
2013/09/21 职场文书
求职简历中的自我评价分享
2013/12/08 职场文书
小学生操行评语大全
2014/04/22 职场文书
学习教师敬业奉献模范事迹材料思想汇报
2014/09/19 职场文书
交警作风整顿剖析材料
2014/10/11 职场文书
结婚堵门保证书
2015/05/08 职场文书
给领导敬酒词
2015/08/12 职场文书