如何使用JS在用YYYY-MM-DD格式填充生日后自动填充年龄字段
How to automatic populate age field after filling up birthdate with a format of YYYY-MM-DD using JS
请帮忙。我尝试了这个代码,但我无法改变它的格式。我需要日期接受YYYY/MM/DD
的格式<script type="text/javascript">
function ageCount() {
var date1 = new Date();
var dob = document.getElementById("dob").value;
var date2 = new Date(dob);
var pattern = /^'d{1,2}'/'d{1,2}'/'d{4}$/;
//Regex to validate date format (dd/mm/yyyy)
if (pattern.test(dob)) {
var y1 = date1.getFullYear();
//getting current year
var y2 = date2.getFullYear();
//getting dob year
var age = y1 - y2;
//calculating age
document.getElementById("ageId").value = age;
doucment.getElementById("ageId").focus();
return true;
} else {
alert("Invalid date format. Please Input in (dd/mm/yyyy) format!");
return false;
}
}
</script>
您只需要从
更改正则表达式var pattern = /^'d{1,2}'/'d{1,2}'/'d{4}$/;
var pattern = /^'d{4}-'d{1,2}-'d{1,2}$/;
它应该这样做。
查看这里:http://jsfiddle.net/fP875/
警告
但是记住你正在使用的正则表达式并不完全正确。你需要一个更精确的正则表达式来检查日期。
您的正则表达式将接受2014-23-56或9999-99-99这样的日期。
我推荐这个:https://stackoverflow.com/a/18759740/3603806如果你需要准确的日期,而不仅仅是格式。
http://jsfiddle.net/EywSP/856/http://jsfiddle.net/EywSP/854/就拿着这个Javascript日期操作库[close]
我写了一个名为moment.js的javascript日期库
https://github.com/moment/moment它创建日期包装器对象,这样它就不需要修改Date.prototype .
包括对字符串、日期对象和unix时间戳的解析。
它可以基于替换模式("dddd, MMMM Do YYYY,H:mm:ss a"),也包括时间前("2天前",6个月前")
相关文章:
- 如何使用与单个查找字段相关的信息填充字段
- 动态填充字段的Jquery验证
- 使用另一个字段的日期+14天自动填充字段
- Mongoose,按填充字段对查询进行排序
- 使用 Codeigniter 和 jquery 在 Modal Bootstrap 3 中的 DB 中填充字段
- 填充字段后更改不透明度
- 根据下拉选择(Javascript / HTML)动态填充字段
- JavaScript 重置 PHP/AJAX 中的填充字段
- 对填充字段的 MongoDB 查询
- 根据 $_POST 值填充字段
- Javascript 自动完成表单并在预填充字段中附加文本
- Jquery 未完成填充字段
- 在客户端使用 javascript、ajax 或 php 计算填充字段的数量
- 使用地理位置坐标填充字段
- 根据同时在另一个字段中输入的内容自动填充字段
- 如何将struts1与angularjs混合以自动填充字段
- 填充字段,该字段是单个查询中嵌入数组的属性
- Phantom.js填充字段,点击提交,现在只能访问下一页
- 如何在预填充字段时清除iOS占位符JS文本
- 我的response.jsp赢了'无法正确填充字段