AngularJS实现数据的过滤与排序

设计一个程序:实现一个动态的学习计划完成情况表排序过滤的设计
实验要求:1、 设计web前端界面
2、 利用angularJS中的依赖注入实现数据的双向绑定
3、 界面信息要包含:姓名,学号,一周学习安排,完成情况
4、 进阶要求:能实现数据的过滤与排序

完整代码
index.html

<!DOCTYPE html>
<html ng-app="myApp">
	<head>
		<meta charset="utf-8" />
		<title></title>
	<style>
		 * {
        margin: 0;
        padding: 0;
    }
    .jh{
    	 text-align: center;
        width: 720px;
        height: 470px;
        margin: 160px auto;
        
    
    }
    
    .jh table {
    	text-align: center;
    }
	th{
		cursor: pointer;
	}
	</style>
	</head>
	<body style="background-image: url(img/2.jpg); background-size:cover">
		<div ng-controller="myController">
		<div class="jh" >
			<h1>学习计划完成情况表</h1>	
			<input type="text" ng-model="filterString" />
			<input type="button" ng-click="setFilter()" value="筛选" />
			  <table border="1" cellpadding="3" cellspacing="0" style="width: 60%;margin:auto" bordercolor="skyblue">
            	<tr>
            		<th ng-click="setSort('name')">姓名 </th>
            		<th ng-click="setSort('num')">学号 </th>
            		<th ng-click="setSort('anpai')">一周学习安排 </th>
            		<th ng-click="setSort('achieve')">完成情况 </th>
            		
            	</tr>
            	<tr ng-repeat=
            		"plane in filteredPlanes | orderBy:column:reverse">
            		<td>{{plane.name}}</td>
            		<td>{{plane.num}}</td>
            		<td>{{plane.anpai}}</td>
            		<td>{{plane.achieve}}</td>
            	</tr>
            	
            </table>
		</div>
	</div>
	<script src="http://code.angularjs.org/1.3.0/angular.min.js"></script>
	<script src="js/1.js"></script>
	</body>
</html>

1.js

angular.module('myApp',[]).controller('myController',['$scope','filterFilter',
function($scope,filterFilter){
	$scope.planes=[
	{name: 'liqiang', num: '20',anpai:'study math', achieve:'yes'},
	{name:'yxy',num:'01',anpai:'learn java',achieve:'no'},
	{name: 'tom', num: '20',anpai:'study', achieve:'yes'},
	{name:'a',num:'02',anpai:'learn java',achieve:'yes'},
	{name: 'b', num: '03',anpai:'study', achieve:'yes'},
	{name:'c',num:'04',anpai:'learn java',achieve:'no'},
	{name: 'd', num: '05',anpai:'study', achieve:'yes'},
	{name:'e',num:'06',anpai:'learn java',achieve:'no'},
	
	
	];
	$scope.filteredPlanes=$scope.planes;
	$scope.reverse=true;
	$scope.column='name';
	$scope.setSort=function(column){
		$scope.column=column;
		$scope.reverse=!$scope.reverse;
	};
	$scope.filterString='';
	$scope.setFilter=function(value){
		$scope.filteredPlanes=filterFilter($scope.planes,$scope.filterString);
	};
}]);

运行效果
在这里插入图片描述

点击学号
在这里插入图片描述

点击完成情况
在这里插入图片描述

在筛选框中输入关键字(如java)
在这里插入图片描述

html的背景图片:
在这里插入图片描述

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

乐亦亦乐

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值