MVC与单元测试实践之健身网站(七)-添加计划
计划的制定涉及到周期-动作包-动作的关联操作,在上一篇<计划的添加与重置>完成了周期的设置、动作包的添加,现在要完成的是动作的添加操作。
一 具体功能
a) 在选定了一个大周期具有的天数后,可以对具体的某一天配置动作包。一个动作包下可以有多个动作,比如3天中的第1天配置了两项动作
b) 点击添加,可以继续增加更多的内容
添加界面糅合了局部训练和综合训练的两套逻辑,不同的训练类型操作界面不同。为了复用一部分html元素和js函数,页面搞得很大,最后js函数仍有20多个,有winform的笨重感觉,也许早应该分开两套界面的。
c) 局部训练下,会要求依次选择肌群-肌肉-动作-组数-次数,如果是负重锻炼,还要添加运动负荷。
d) 选择了动作后,会在页面下方加载之前在后台配置的动作说明和图片的形象内容,还要加载运动负荷的单位,上图的俯卧两头起动作没有负重,所以不显示运动负荷的单位。点击图片还可查看原图。这里为了省事,就没有区分缩略图和原图,小图片的位置直接放置缩小的原图。
e) 在周期计划页面,还增加了一项改进,发挥了footable可以设置隐藏列的特色,描述列只显示一部分内容,详细的动作包内容在隐藏的详情列展示,点击前方的箭头可以展开。
二 问题记录
这一篇主要在做前端界面了,菜地一塌糊涂唉,有时一个语句要反复地试好多遍,就像一开始写C#的时候,现在js之类的脚本语言也能写APP甚至服务端了,也许是该考虑专门学学了。这里记录几个印象深刻的问题。
a) html5的placeholder和非空校验
html5自带的placeholder和非空校验比起之前繁琐的js实现好用多了,但在这儿的添加界面用了很多下拉框,下拉框却不能使用placeholder,于是在数据源的第一行添加了特殊的项如“请输入***”之类,但这又带来了另一个问题,select的非空校验不能用了,即使默认选中第一行“请输入***”,也已经有值了。这时需要在为下拉框绑定数据源时单独处理第一行,设置第一行的value=””。
b) 原则上元素的ID、Name是不能相同的,如果相同也可以,但会带来动态显示方面的问题,如果要为这些相同ID或Name的元素设置值,是可以一次性设置的,但如果要取得这个ID或Name的值,js就不知道该取那个元素了。
c) 关于ajax请求的同步、异步、阻塞、响应次序方面还有待了解。
MVC与单元测试实践之健身网站(七)-添加计划的更多相关文章
- MVC与单元测试实践之健身网站(七)-日程与打卡
上一篇完成了计划的制定,然后需要把计划转换为日程,在日历视图上直观地显示,与日程相对应的还有完成日程内容后的打卡动作. 一 日程视图 a) 要把循环的计划铺开成为日程,日程的显示用日历视图是最合适的. ...
- MVC与单元测试实践之健身网站(一)-项目概述
前不久刚刚通过租房网站的开发学习了MVC,并随后学习了单元测试相关的基础,现在开始健身网站的开发,该项目将结合MVC与单元测试,在开发实践过程中,趁热打铁,巩固并运用之前的内容. 一 健身网站功能描述 ...
- MVC与单元测试实践之健身网站(完)-备案与部署
主页-http://www.zhixin9001.cn/Home/Introduce GitHub- https://github.com/zhixin9001/Fitness 这是关于Fit网站的最 ...
- MVC与单元测试实践之健身网站(四)-动作管理
网站后台负责进行动作的管理,包括动作名称.介绍.训练要点.配图等内容,以便前台能够使用这些内容.在上一篇< Fit项目图片上传和云存储的调通>中已经准备好了这里涉及到的主要技术难点,现在就 ...
- MVC与单元测试实践之健身网站(六)-计划的添加与重置
健身计划需要使用者自己定制,没有现成的内容可供选择.本篇就是关于健身计划的添加与重置功能的一部分. 一 功能描述 a) 关于计划的定制,决定以周期的方式,比如有人会以一周为周期,然后安排每周的1.3. ...
- MVC与单元测试实践之健身网站(二)-管理员模块
开始动手做这个项目时,发现无法做到完全的先设计.再编码,于是决定分模块进行,从管理员模块开始设计.编码,而且接口就已经改了好几次了. 管理员模块涉及的功能有登录和后台对管理员的维护,其中也涉及前端的开 ...
- MVC与单元测试实践之健身网站(八)-统计分析
统计分析模块与之前的内容相对独立,用于记录并跟踪各部位围度的变化.还需提供对所作计划的分析,辅助使计划更合理. 一 围度记录 这儿可以记录各项身体围度指标,现在包括体重在内身体上上下下基本全部提供了 ...
- MVC与单元测试实践之健身网站(五)-系统信息、前台入口
Fit项目停滞了一段时间,现在继续吧.上一篇完成了动作文本和配图的添加.编辑等内容.接下来要完成的是后台的最后一个模块:系统信息:以及前台的入口:关于注册.登录.修改密码等. 一 系统信息 a) 用户 ...
- MVC与单元测试实践之健身网站(三)-角色与权限
管理员的维护功能完成后,还有权限和角色,三者构成权限系统.这里采用的RBAC是最经典.最简单的一种,权限-角色-管理员只能层层传递,并不能直接为管理员分配权限. 一 权限.角色管理 a) 权限 之前编 ...
随机推荐
- JavaScript 函数式编程读书笔记1
概述 这是我读<javascript函数式编程>的读书笔记,供以后开发时参考,相信对其他人也有用. 说明:虽然本书是基于underscore.js库写的,但是其中的理念和思考方式都讲的很好 ...
- OpenStack-Ocata版+CentOS7.6 云平台环境搭建 — 2.安装配置OpenStack基础服务
节点配置情况说明: 控制节点:controller: IP:192.168.164.128 hostname&hosts:likeadmin 计算加点:Nova: IP:192.168.164 ...
- 使用MultipartFile上传文件
转载地址:https://www.cnblogs.com/lunaticcoder/p/9813483.html(具体的看这个这个大佬的博客) 依赖包: <!-- 上传文件依赖组件 --> ...
- C语言中全局结构体指针隐含的错误
前天在嵌入式系统上,调试一个数组的全局变量时,发现该变量一直会动态变化.深入分析, 才发现该全局结构体没有申请内存,而是用了一个指针.这种情况编译器是检查不出来的,在linux 上运行会挂掉,但是在裸 ...
- Strom
storm 实时分析概念 离线分析 通常是 需要一段时间的数据积累 积累到一定数量数据后 开始离线分析 无论数据量多大 离线分析 有开始 也有结束 最终得到 ...
- 【BJOI2019】光线 模拟
题目大意:有一束光线要依次穿过$n$块玻璃. 第i块玻璃的透射率为$a_i$,反射率为$b_i$. 问你有多少光能最终穿过所有玻璃. 数据范围:$n≤5\times 10^5$,答案对$9982443 ...
- ES6学习总结
const只能保证这个指针是固定的,至于它指向的数据结构是不是可变的,就完全不能控制了 const foo = {}; // 为 foo 添加一个属性,可以成功 foo.prop = 123; foo ...
- 对话Task
上一篇简单讲解了 线程和线程池以及上下文切换.创建线程代价高昂,默认每个线程都要占用大量虚拟内存1M.更有效的做法使用线程池,重复利用线程.在.NET4.0中引入了TPL任务并行库,你可以在将精力集中 ...
- Django集成Markdown编辑器【附源码】
专注内容写作的你一定不要错过markdown 简单介绍 markdown是一种标记语言,通过简单的标记语法可以使普通的文本内容具有一定的格式,使用非常简单,学习成本极低 目前各大Blog平台都已支持m ...
- 关系型数据库 VS NOSQL
转载:https://mp.weixin.qq.com/s/FkoOMY8_vnqSPPTHc2PL1w 行式数据库(关系型数据库) 行式数据库有如下几个缺点: 大数据场景下 I/O 较高,因为数据是 ...