Jquery年龄计算日期

seo*_*ppc 15 jquery

我在以下jQuery代码中遗漏了什么?

var dob = $('#date').val();
if(dob != ''){
    var today = new Date();
    var dayDiff = Math.ceil(today - dob) / (1000 * 60 * 60 * 24 * 365);
    var age = parseInt(dayDiff);
    $('#age').html(age+' years old');
}
Run Code Online (Sandbox Code Playgroud)

我从MySQL db获得了#date的预取值.

<input type="text" value="1988-04-07" id="#date" name="dob" /><p id="age"></p>
Run Code Online (Sandbox Code Playgroud)

它返回NaN,而不是正确的值.

Mat*_*all 50

$('#date').val()返回字符串'1988-04-07'.您需要将其解析为实际数字.

dob = new Date(dob);
var today = new Date();
var age = Math.floor((today-dob) / (365.25 * 24 * 60 * 60 * 1000));
$('#age').html(age+' years old');
Run Code Online (Sandbox Code Playgroud)

正如@esqew指出的那样,你还需要id="#date"改为id="date".