この記事では、Angular で実装されたスケジュール機能を中心に、スケジュールにコンテンツを追加したり、表示されたコンテンツを非表示にしたりする機能を紹介します。AngularJS のイベント応答とページ要素の動的操作に関する実装スキルが含まれます。皆さんのお役に立てれば幸いです。
この記事の例では、Angular によって実装されたスケジュール関数について説明します。参考のために皆さんと共有してください。詳細は次のとおりです:
まず実行効果を見てみましょう:
具体的なコードは次のとおりです:
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>www.jb51.net Angular日程表</title> <style> table{ border-collapse: collapse; } td{ padding: 10px; border: 1px solid #000; } </style> <script src="angular.min.js"></script> <script> /* 1、基本布局 2、准备模拟数据 */ // 模拟数据 var data = { user:"吴四", items:[ {action:"约刘诗诗吃饭",done:false}, {action:"约刘诗诗跳舞",done:false}, {action:"约刘诗诗敲代码",done:true}, {action:"约刘诗诗爬长城",done:false}, {action:"约刘诗诗逛天坛",done:false}, {action:"约刘诗诗看电影",done:false} ] }; var myapp=angular.module("myapp",[]); /*这里的是自定义过滤器,将数组items 过滤之后返回arr*/ myapp.filter("doFilter",function(){ /*传入两个参数,一个数组items,另一个是complate*/ return function(items,flag){ var arr=[]; /*遍历items,如果dones是false或者下边的按钮在选中状态,就将这一条item push到arr中*/ for(var i=0;i<items.length;i++){ if(items[i].done==false){ arr.push(items[i]); }else{ if(flag==true){ arr.push(items[i]); } } } return arr; } }); myapp.controller("myCtrl",function($scope){ $scope.data=data; $scope.complate=false; /*判断还有几件事儿没有完成*/ $scope.count=function(){ var n=0; /*判断还有几件事儿没有完成*/ for(var i=0;i<$scope.data.items.length;i++){ if($scope.data.items[i].done==false){ n++; } } return n; }; /*添加新的日程*/ $scope.add=function(){ /*对$scope.action进行一下非空判断*/ if($scope.action){ /*如果输入了内容之后,就在数组的最后加入一条新内容*/ $scope.data.items.push({"action":$scope.action,"done":false}); /*添加完成之后,将input置空*/ $scope.action=""; } }; }); </script> </head> <body ng-app="myapp" ng-controller="myCtrl"> <h2>吴四的日程<span ng-bind="count()"></span></h2> <p> <input type="text" ng-model="action"><button ng-click="add()">添加</button> </p> <table> <thead> <tr> <th>序号</th> <th>日程</th> <th>完成情况</th> </tr> </thead> <tbody> <tr ng-repeat="item in data.items|doFilter:complate"> <td>{{$index}}</td> <td>{{item.action}}</td> <td><input type="checkbox" ng-model="item.done"></td> </tr> </tbody> </table> <p>显示全部<input type="checkbox" ng-model="complate"></p> </body> </html>
関連する推奨事項:
シンプルなイベントスケジュールの PHP 開発と生成 カレンダー、スケジュールカレンダー_PHP チュートリアル
より複雑なテーブルのフィルタリングと削除機能の Angular 実装の詳細な例
以上がAngularのスケジュール機能の実装を詳しく解説(表示内容の追加・非表示が可能)の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。