我想自动填补我的年龄后,选择出生日期,我使用的getFullYear.在选择出生日期时是否可以包括getMonth和getDate?这是我的密码。Javascript
<script type = "text/javascript">
$(document).ready(function () {
var age = "";
$('#dateofbirth').datepicker({
onSelect: function (value, ui) {
var today = new Date();
age = today.getFullYear() - ui.selectedYear;
$('#myAge').val(age);
},
changeMonth: true,
changeYear: true
})
})
</script>发布于 2018-09-19 08:01:06
$(document).ready(function() {
$('#dateofbirth').datepicker({
onSelect: function (value, ui) {
var selectedDate = new Date(ui.selectedYear, ui.selectedMonth, ui.selectedDay), //Convert value to date
dateToday = new Date(), //Get the date today.
age = Math.floor((dateToday - selectedDate) / 31536000000) //Get the difference of dates then convert to number of years.
$('#age').val(age);
},
changeMonth: true,
changeYear: true
});
});<link rel='stylesheet' href='https://cdnjs.cloudflare.com/ajax/libs/jqueryui/1.12.1/jquery-ui.min.css'>
<script src='https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js'></script>
<script src='https://cdnjs.cloudflare.com/ajax/libs/jqueryui/1.12.1/jquery-ui.min.js'></script>
<input id='dateofbirth'>
<input id='age'>
更新:
我没有使用(1000*60*60*24*365) = 31536000000,而是使用了(1000*60*60*24*365.25) = 31557600000。
每四年有一个额外的1天,所以我们没有循环通过它,我们只是在每年增加一个0.25来覆盖这个问题。
$(document).ready(function() {
$('#dateofbirth').datepicker({
onSelect: function (value, ui) {
var selectedDate = new Date(ui.selectedYear, ui.selectedMonth, ui.selectedDay), //Convert value to date
dateToday = new Date(), //Get the date today.
age = Math.floor((dateToday - selectedDate) / 31557600000) //Get the difference of dates then convert to number of years.
$('#age').val(age);
},
changeMonth: true,
changeYear: true
});
});<link rel='stylesheet' href='https://cdnjs.cloudflare.com/ajax/libs/jqueryui/1.12.1/jquery-ui.min.css'>
<script src='https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js'></script>
<script src='https://cdnjs.cloudflare.com/ajax/libs/jqueryui/1.12.1/jquery-ui.min.js'></script>
<input id='dateofbirth'>
<input id='age'>
https://stackoverflow.com/questions/52399856
复制相似问题