根据datetimepicker选择的日期计算年龄
来源:互联网 发布:维棠下载器 mac版 编辑:程序博客网 时间:2024/06/06 08:49
首先上图看一下实现的效果:
html:(切记input加上value)
<div class="form-group"> <div class="col-md-4 control-label"> <label>出生日期:</label> </div> <div class="controls col-md-5"> <input class="form-control calendar-item" name="birthday" type="text" id="birthday" value={{ activityMember.birthday|date('Y-m-d') }} readonly="true"> <i class="es-icon es-icon-calendar text-xlg"></i> </div> <div class="text-left color-gray"> <span class="mlm">年龄:</span><input class="js-get-age" type="text" name="age" value=""readonly="true"> </div> </div>
js:
$('#birthday').change(function(){ var strBirthday = $('#birthday').val(); $('.js-get-age').val(jsGetAge(strBirthday)); })
function jsGetAge(strBirthday){ var returnAge; var strBirthdayArr=strBirthday.split("-"); var birthYear = strBirthdayArr[0]; var birthMonth = strBirthdayArr[1]; var birthDay = strBirthdayArr[2]; d = new Date(); var nowYear = d.getFullYear(); var nowMonth = d.getMonth() + 1; var nowDay = d.getDate(); if(nowYear == birthYear){ returnAge = 0;//同年 则为0岁 } else{ var ageDiff = nowYear - birthYear ; //年之差 if(ageDiff > 0){ if(nowMonth == birthMonth) { var dayDiff = nowDay - birthDay;//日之差 if(dayDiff < 0) { returnAge = ageDiff - 1; } else { returnAge = ageDiff ; } } else { var monthDiff = nowMonth - birthMonth;//月之差 if(monthDiff < 0) { returnAge = ageDiff - 1; } else { returnAge = ageDiff ; } } } else { returnAge = -1;//返回-1 表示出生日期输入错误 晚于今天 } } return returnAge;//返回周岁年龄 }
总结一下就是:
1,给datepicker加一个change事件;
2,执行计算年龄的function;
3,将返回的周岁数赋给要输出的标签里面。
0 0
- 根据datetimepicker选择的日期计算年龄
- //根据日期计算年龄
- 根据当前日期,计算一个人的年龄
- javascript根据日期计算年龄
- 根据日期精确计算年龄
- android根据日期计算年龄
- SQL 根据日期精确计算年龄
- SQL 根据日期精确计算年龄
- bootstrap-datetimepicker 选择日期
- 根据当前时间计算年龄的函数
- php根据生日计算年龄的方法
- 根据出生日期计算年龄的代码
- 根据生日计算年龄
- 根据生日计算年龄
- 根据生日计算年龄
- 根据生日计算年龄
- 根据出生日期计算年龄
- 根据出生日期计算年龄
- dbutils源码的基本结构
- 二叉树的遍历
- 使用python获取系统所有进程PID以及进程名称
- 如何获得exe当前路径
- VMware 12 许可密钥
- 根据datetimepicker选择的日期计算年龄
- SpringMVC 返回json
- C++ 读取文件内容到data 结构体 structure
- Python中hashlib模块
- 杭电 1720 A+B Coming 十六进制转化为十进制
- 父类引用指向子类对象属性值
- Fragment生命周期完全解析
- 不正经运维狗的习题12
- android端基于socket的局域网内服务器与客户端加密通信