根据填入日期自动算年龄

框架说明:使用layui框架的日期插件实现,其他的应该也是可以实现的

form表单节选

<div class="layui-row">
				<div class="layui-form-item ">
					<div class="layui-col-xs3 layui-col-sm3 layui-col-md3">
						<label class="layui-form-label">出生日期</label>
					</div>
					<div class="layui-col-xs1 layui-col-sm1 layui-col-md1">
						<label class="layui-form-label">:</label>
					</div>
					<div class="layui-col-xs8 layui-col-sm8 layui-col-md8">
						<input type="text" name="birth" id="birth" lay-verify="date"
							placeholder="yyyy-MM-dd" autocomplete="off" class="layui-input"
							readOnly>
					</div>
				</div>
			</div>
			 <div class="layui-row">
				<div class="layui-form-item ">
					<div class="layui-col-xs3 layui-col-sm3 layui-col-md3">
						<label class="layui-form-label">年龄</label>
					</div>
					<div class="layui-col-xs1 layui-col-sm1 layui-col-md1">
						<label class="layui-form-label">:</label>
					</div>
					<div class="layui-col-xs8 layui-col-sm8 layui-col-md8">
						<input type="text" name="age" id="age"
							lay-verify="required|number" placeholder="点击这里自动获取年龄"
							autocomplete="off" class="layui-input" onfocus="countAge()"
							readOnly>
					</div>
				</div>
			</div> 

 

js代码段

//根据输入的日期 计算年龄
	 function countAge() {
		var birth = document.getElementById("birth").value;
		var r = birth.match(/^(\d{1,4})(-|\/)(\d{1,2})\2(\d{1,2})$/);
		if (r == null)
			return false;
		var d = new Date(r[1], r[3] - 1, r[4]);
		if (d.getFullYear() == r[1] && (d.getMonth() + 1) == r[3]
				&& d.getDate() == r[4]) {
			var Y = new Date().getFullYear();
			var age = Y - r[1];
			if (age >= 18) {
				document.getElementById("age").value = age;
			} else {
				layer.msg("请输入正确的出生日期!");
			}
		}
	} 

 

转载于:https://my.oschina.net/zhongshg/blog/1788369

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值