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执行顺序
Nov 09 Javascript
jquery 滚动条事件简单实例
Jul 12 Javascript
用js控制组织结构图可以任意拖拽到指定位置
Jan 17 Javascript
JavaScript中的bold()方法使用详解
Jun 08 Javascript
介绍一个简单的JavaScript类框架
Jun 24 Javascript
Vue.js基础知识汇总
Apr 27 Javascript
JS实现title标题栏文字不间断滚动显示效果
Sep 07 Javascript
使用base64对图片的二进制进行编码并用ajax进行显示
Jan 03 Javascript
easyui-edatagrid.js实现回车键结束编辑功能的实例
Apr 12 Javascript
浅谈js基础数据类型和引用类型,深浅拷贝问题,以及内存分配问题
Sep 02 Javascript
Vue实例的对象参数options的几个常用选项详解
Nov 08 Javascript
手动实现vue2.0的双向数据绑定原理详解
Feb 06 Vue.js
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登陆页的密码处理方式分享
2013/10/14 PHP
两千行代码的PHP学习笔记汇总
2014/10/05 PHP
php中simplexml_load_file函数用法实例
2014/11/12 PHP
PHP利用imagick生成组合缩略图
2016/02/19 PHP
PHP中类与对象功能、用法实例解读
2020/03/27 PHP
jQuery 学习6 操纵元素显示效果的函数
2010/02/07 Javascript
vs2003 js文件编码问题的解决方法
2010/03/20 Javascript
iframe的onload在Chrome/Opera中执行两次Bug的解决方法
2011/03/17 Javascript
jquery通过a标签删除table中的一行的代码
2013/12/02 Javascript
纯js实现重发验证码按钮倒数功能
2015/04/21 Javascript
JavaScript实现单击下拉框选择直接跳转页面的方法
2015/07/02 Javascript
JavaScript+html5 canvas制作的百花齐放效果完整实例
2016/01/26 Javascript
jquery基础知识第一讲之认识jquery
2016/03/17 Javascript
Node.js实现文件上传
2016/07/05 Javascript
用户管理的设计_jquery的ajax实现二级联动效果
2017/07/13 jQuery
详解基于Node.js的微信JS-SDK后端接口实现代码
2017/07/15 Javascript
Node.js自定义实现文件路由功能
2017/09/22 Javascript
AngularJS集合数据遍历显示的实例
2017/12/27 Javascript
JS使用百度地图API自动获取地址和经纬度操作示例
2019/04/16 Javascript
JS使用cookie保存用户登录信息操作示例
2019/05/30 Javascript
vue-router 中 meta的用法详解
2019/11/01 Javascript
Python使用matplotlib绘制余弦的散点图示例
2018/03/14 Python
Python判断两个list是否是父子集关系的实例
2018/05/04 Python
Python 、Pycharm、Anaconda三者的区别与联系、安装过程及注意事项
2019/10/11 Python
numpy 声明空数组详解
2019/12/05 Python
python3 循环读取excel文件并写入json操作
2020/07/14 Python
Python中的面向接口编程示例详解
2021/01/17 Python
python3判断IP地址的方法
2021/03/04 Python
从Pytorch模型pth文件中读取参数成numpy矩阵的操作
2021/03/04 Python
工商管理专业职业生涯规划
2014/01/01 职场文书
《只有一个地球》教学反思
2014/02/14 职场文书
英语演讲稿3分钟
2014/04/29 职场文书
领导班子“四风问题”“整改方案
2014/10/02 职场文书
教育见习报告范文
2014/11/03 职场文书
小学开学典礼新闻稿
2015/07/17 职场文书
初中思品教学反思
2016/02/20 职场文书