AngularJS動態(tài)添加數(shù)據(jù)并刪除的實例
更新時間:2018年02月27日 14:19:11 作者:約德爾蒙
下面小編就為大家分享一篇AngularJS動態(tài)添加數(shù)據(jù)并刪除的實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
如下所示:
<!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 = '';
// 回車時調(diào)用ng-submit,往待辦事項中添加數(shù)據(jù)
$scope.addItem = function () {
// 向數(shù)組中添加數(shù)據(jù)
$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) {
// 從已完成數(shù)據(jù)中刪除
var tmp = $scope.doneTodos.splice(index, 1);
tmp[0].checked = !tmp[0].checked;
// 將事項添加到待辦事項中
$scope.todos = $scope.todos.concat(tmp);
// ev.preventDefault();
}
// 刪除事項,傳遞當前索引和完整數(shù)據(jù)
$scope.delete = function (index, todos) {
// $scope.doneTodos.splice(index, 1);
// console.log(todos);
// 刪除索引值對應(yīng)的事項
todos.splice(index, 1);
}
}])
// var arr = [0, 1, 2, 3, 4];
// arr.splice(2,1)
</script>
</body>
</html>
以上這篇AngularJS動態(tài)添加數(shù)據(jù)并刪除的實例就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
Angular.js ng-file-upload結(jié)合springMVC的使用教程
這篇文章主要給大家介紹了關(guān)于Angular.js文件上傳控件ng-file-upload結(jié)合springMVC的使用教程,文中通過示例代碼介紹的非常詳細,對大家具有一定的參考學(xué)習(xí)價值,需要的朋友們下面來一起看看吧。2017-07-07
詳解Angular CLI + Electron 開發(fā)環(huán)境搭建
本篇文章主要介紹了Angular CLI + Electron 開發(fā)環(huán)境搭建,具有一定的參考價值,有興趣的可以了解一下2017-07-07
AngularJS通過$location獲取及改變當前頁面的URL
本篇將介紹AngularJS中的$location服務(wù)的基本用法,$location服務(wù)的主要作用是用于獲取當前url以及改變當前的url,并且存入歷史記錄。本文通過示例代碼介紹的很詳細,有需要的朋友們可以參考借鑒,下面來一起看看吧。2016-09-09
AngularJS中關(guān)于ng-class指令的幾種實現(xiàn)方式詳解
這篇文章給大家介紹了angularJS中ng-class指令的三種實現(xiàn)方式,其中包括通過數(shù)據(jù)的雙向綁定、通過對象數(shù)組和通過key/value這三種方式,有需要的朋友們可以參考學(xué)習(xí),下面來一起看看吧。2016-09-09
AngularJS基礎(chǔ) ng-readonly 指令簡單示例
本文主要介紹AngularJS ng-readonly 指令,這里對ng-readonly指令的資料做了整理,有學(xué)習(xí)AngularJS 指令的同學(xué)可以參考下2016-08-08
angular.js4使用 RxJS 處理多個 Http 請求
本篇文章主要介紹了angular.js使用 RxJS 處理多個 Http 請求,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2017-09-09

