JQuery 根据文本框中给出的日期计算年龄

标签 jquery

如何计算在文本框中以 YYYY/MM/DD 格式输入出生日期的人的年龄?

这是我迄今为止尝试过的:

function OnClick() {
var txtDate = $("#txtDate").val();
var date1 = new Date();
date1.setFullYear(txtDate);
var d1 = date1.getFullYear();
var date2 = new Date();
var d2 = date2.getFullYear();
var age = d2 - d1;
document.getElementById("Diven").innerHTML = age;   
}

我希望能够计算出确切的年龄,到目前为止我只能使用 JQuery 按年份计算。

感谢帮助

最佳答案

我实际上保存了一小堆代码来执行此操作,

这应该可以解决问题:

var today = new Date();
var inputBirthDate= new Date(birthYear, birthMonth - 1, birthDay);
var age = today.getFullYear() - inputBirthDate.getFullYear();
var month = today.getMonth() - inputBirthDate.getMonth();
if (month < 0 || (month === 0 && today.getDate() < inputBirthDate.getDate())) {
   age--;
}
console.log(age);

上面的代码将根据输入的出生日期返回正确的年龄。月份上的“-1 ”是因为月份是从“00”开始计算的

关于JQuery 根据文本框中给出的日期计算年龄,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34158381/

相关文章:

javascript - 当用户想要重新加载页面时自定义 url

javascript - 如何在两个闭合标签之间获取文本

javascript - 将 jQuery.parseJSON 添加到 jQuery 1.3

javascript - Highcharts 条形图 : possible to combine datapoints inside dataLabels?

javascript - 动态地将面板添加到 Bootstrap 3 Accordion

javascript - 识别特定 DOM 对象是否实际上是 slider 对象

jquery - 从 3 ul 获取最大 li 高度并将其添加到所有

javascript - 从另一个网站获取 html 元素 (XSS)

jQuery 优化

javascript - 检查 if 语句中是否存在具有数据属性的跨度