<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
<style type="text/css">
p {
display: none;
}
.red {
background-color: #8B0000;
}
/* .box {
width: 50px;
height: 50px;
} */
.r {background-color: red;}
.b {background-color: blue;}
.g {background-color: green;}
.active {background-color: darkred;}
</style>
</head>
<body>
<!-- 2、先有一下成绩单数据
scores = [
{ name: 'Bob', math: 97, chinese: 89, english: 67 },
{ name: 'Tom', math: 67, chinese: 52, english: 98 },
{ name: 'Jerry', math: 72, chinese: 87, english: 89 },
{ name: 'Ben', math: 92, chinese: 87, english: 59 },
{ name: 'Chan', math: 47, chinese: 85, english: 92 },
]
用table表格标签渲染以上数据,表格第一列是学生总分排名,最后一列是学生总分; 3、还是采用上方相同的数据,采用相同的渲染规则,只渲染所有科目都及格了的学生。 -->
<!-- 1、还是采用上方相同的数据,添加筛选规则:
i)有三个按钮:语文、数学、外语,点击谁谁高亮,且当前筛选规则采用哪门学科
ii)两个输入框,【】~【】,前面天最小分数,后面填最大分数,全部设置完毕后,表格的数据会被更新只渲染满足所有条件的结果
举例:点击语文,输入【86】~【87】,那就只会渲染Jerry和Ben两条数据 --> <div id="app"> <p v-for="v in scores">
<!-- {{v.name}}的分数:
math:{{ v.math }}
chinese:{{v.chinese}}
english:{{v.english}} -->
{{v.math, v.chinese, v.english|fn(v.name)}}
</p> <!-- <p v-for="i in result">
{{i.name}}:{{i.grade}}
</p> -->
<div>成绩表:高亮的学生名字表示各科成绩及格<div>
<hr>
<table border="3" cellpadding="10">
<thead>
<tr>
<th>排名</th>
<th>学生名称</th>
<th>数学成绩</th>
<th>语文成绩</th>
<th>英语成绩</th>
<th>总分数</th>
</tr>
</thead>
<tbody v-for="v,i in result">
<tr>
<td>{{i+1}}</td>
<td class="red" v-if="is_pass === v.math > 60 & v.chinese >60 & v.english > 60">{{v.name}}</td>
<td v-else="is_pass">{{v.name}}</td>
<td>{{v.math}}</td>
<td>{{v.chinese}}</td>
<td>{{v.english}}</td>
<td>{{v.grade}}</td>
</tr>
</tbody>
</table> <hr> <!-- 第二题有bug -->
<div>
<div>
<input type="button" @click="page='r_page'" :class="{active:page === 'r_page'}" value="语文" v-if="page === 'r_page'">
<input type="button" @click="page='b_page'" :class="{active:page === 'b_page'}" value="数学">
<input type="button" @click="page='g_page'" :class="{active:page === 'g_page'}" value="英语">
<!-- <button type="button" @click="page='r_page'" :class="{active:page === 'r_page'}">语文</button>&nbsp;&nbsp;
<input type="button" @click="page='b_page'" :class="{active:page === 'b_page'}">数学</button>&nbsp;&nbsp;
<button type="button" @click="page='g_page'" :class="{active:page === 'g_page'}">英语</button>&nbsp;&nbsp; -->
<div v-if="page === 'r_page'" class="box r"></div>
<div v-else-if="page === 'b_page'" class="box b" ></div>
<div v-else class="box g"></div>
</div>
</div>
</div> </body> <script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
<script type="text/javascript">
var total_grade = [];
let app = new Vue({
el:'#app',
data:{
total:0,
is_pass:true,
page:'r_page',
scores:[
{ name: 'Bob', math: 97, chinese: 89, english: 67 },
{ name: 'Tom', math: 67, chinese: 52, english: 98 },
{ name: 'Jerry', math: 72, chinese: 87, english: 89 },
{ name: 'Ben', math: 92, chinese: 87, english: 59 },
{ name: 'Chan', math: 47, chinese: 85, english: 92 },
]
},
filters:{
fn(math,chinese,english,name){
// console.log(a,b,c)
let total = math + chinese + english
// console.log(total_grade,total,name)
this.total = total
console.log(name,total_grade)
total_grade.push({'name':name,'math':math,'chinese':chinese,'english':english,'grade':total}) return total
}
},
computed:{
result(){
for (let i=0;i<total_grade.length-1;i++){
for (j=0;j<total_grade.length-1-i;j++){
if (total_grade[j].grade > total_grade[j+1].grade){
let tmp = total_grade[j]
total_grade[j] = total_grade[j+1]
total_grade[j+1] = tmp
} }
};
return total_grade
} },
})
</script>
</html>

day66作业的更多相关文章

  1. day66 模板小结 [母板继承,块,组件]

    小结: day65 1. 老师编辑功能写完 1. magic2函数 --> 用两层for循环解决 全栈8期之殇 问题 2. 模板语言 in 语法 {% if xx in xx_list %} { ...

  2. python10作业思路及源码:类Fabric主机管理程序开发(仅供参考)

    类Fabric主机管理程序开发 一,作业要求 1, 运行程序列出主机组或者主机列表(已完成) 2,选择指定主机或主机组(已完成) 3,选择主机或主机组传送文件(上传/下载)(已完成) 4,充分使用多线 ...

  3. SQLServer2005创建定时作业任务

    SQLServer定时作业任务:即数据库自动按照定时执行的作业任务,具有周期性不需要人工干预的特点 创建步骤:(使用最高权限的账户登录--sa) 一.启动SQL Server代理(SQL Server ...

  4. 使用T-SQL找出执行时间过长的作业

        有些时候,有些作业遇到问题执行时间过长,因此我写了一个脚本可以根据历史记录,找出执行时间过长的作业,在监控中就可以及时发现这些作业并尽早解决,代码如下:   SELECT sj.name , ...

  5. T-SQL检查停止的复制作业代理,并启动

        有时候搭建的复制在作业比较多的时候,会因为某些情况导致代理停止或出错,如果分发代理时间停止稍微过长可能导致复制延期,从而需要从新初始化复制,带来问题.因此我写了一个脚本定期检查处于停止状态的分 ...

  6. Python09作业思路及源码:高级FTP服务器开发(仅供参考)

    高级FTP服务器开发 一,作业要求 高级FTP服务器开发 用户加密认证(完成) 多用户同时登陆(完成) 每个用户有不同家目录且只能访问自己的家目录(完成) 对用户进行磁盘配额,不同用户配额可不同(完成 ...

  7. 个人作业week3——代码复审

    1.     软件工程师的成长 感想 看了这么多博客,收获颇丰.一方面是对大牛们的计算机之路有了一定的了解,另一方面还是态度最重要,或者说用不用功最重要.这些博客里好些都是九几年或者零几年就开始学习编 ...

  8. 个人作业-week2:关于微软必应词典的案例分析

    第一部分 调研,评测 评测基于微软必应词典Android5.2.2客户端,手机型号为MI NOTE LTE,Android版本为6.0.1. 软件bug:关于这方面,其实有一些疑问.因为相对于市面上其 ...

  9. 软件工程第二次作业——git的使用

    1. 参照 http://www.cnblogs.com/xinz/p/3803109.html 的第一题,每人建立一个GitHub账号,组长建立一个Project,将本组成员纳入此Porject中的 ...

随机推荐

  1. 【JZOJ6273】欠钱

    description analysis 读懂题就可知\(b\)的收益即为\(a\)到\(b\)这一条链上边权的最小值 那么就是动态维护一个森林,询问链上最小值,同时必须满足儿子走向父亲 明显\(LC ...

  2. Windows copy

    将一份或多份文件复制到另一个位置. COPY [/D] [/V] [/N] [/Y | /-Y] [/Z] [/L] [/A | /B ] source [/A | /B]     [+ source ...

  3. SpringBoot生产/开发/测试多环境的选择

    多环境选择 一般一套程序会被运行在多部不同的环境中,比如开发.测试.生产环境,每个环境的数据库地址,服务器端口这些都不经相同,若因为环境的变动而去改变配置的的参数,明显是不合理且易造成错误的 对于不同 ...

  4. c# 中xml序列化时相同节点存入不同类型值

    先上需要序列话的类定义: [System.Xml.Serialization.XmlIncludeAttribute(typeof(DescriptionType))] [System.CodeDom ...

  5. Python 迭代器与生成器及装饰器

    1.迭代器(Iterator) 迭代器是访问集合元素的一种方式.有下面特点: 1)每次调用__next__()方法只访问一个元素,而且不能后退,便于循环比较大的数据集合,节省内存:(当容器中没有可访问 ...

  6. Django之单表查询——神奇的双下划线

    1.filter中的单表查询 # 查询id>1且id<4的结果 ret = models.Person.objects.filter(id__gt=1,id__lt=4) print(re ...

  7. [转]Java四种线程池的使用

    Java通过Executors提供四种线程池,分别为:newCachedThreadPool创建一个可缓存线程池,如果线程池长度超过处理需要,可灵活回收空闲线程,若无可回收,则新建线程.newFixe ...

  8. 阿里云容器服务通过LoadBalancer暴露IPv6服务

    背景: IPv4地址已接近枯竭,被誉为下一代互联网技术的IPv6成为新的“全球互联网门牌号”,它可以让地球上的每一粒沙子都拥有地址.当下,各国都在加速推进下一代互联网的部署,工信部也互联网服务商提出了 ...

  9. threading.local在flask中的用法

    一.介绍 threading.local的作用: 多个线程修改同一个数据,复制多份变量给每个线程用,为每个线程开辟一块空间进行数据的存储,而每块空间内的数据也不会错乱. 二.不使用threading. ...

  10. android 头像选择以及裁剪

    一.布局申明 <ImageView android:id="@+id/head_image" android:layout_width="80dp" an ...