jQuery UI Datepicker以天为单位的差异
我需要计算所选日期和当前日期之间的周数差异。 我试过用weekNumberPicked - weekNumberCurrent
计算weekNumberPicked - weekNumberCurrent
,但如果两个日期在不同的年份,结果是不正确的,所以我可能需要像daysDifference / 7
那样得到它。 我应该如何使用onSelect
操作实现它?
您可以使用Datepicker的函数getDate来获取Date对象。
然后只从另一个中减去一个日期(可能也想获得绝对值)以获得差异的毫秒数,并计算天数或周数的差异。
$('#test').datepicker({ onSelect: function() { var date = $(this).datepicker('getDate'); var today = new Date(); var dayDiff = Math.ceil((today - date) / (1000 * 60 * 60 * 24)); } });
由于DatePicker getDate()方法返回一个javascript Date对象,你可以这样做:
var myDate = $('.datepicker').datepicker('getDate'); var current = new Date(); var difference = myDate - current;
difference
现在包含两个日期之间的毫秒数,您可以轻松计算周数:
var weeks = difference / 1000 / 60 / 60 / 24 / 7;
尝试此代码并将其应用于您的工作:D
$("#date_born").datepicker({ onSelect: function () { var start = $('#date_born').datepicker('getDate'); var end = new Date(); var age_year = Math.floor((end - start)/31536000000); var age_month = Math.floor(((end - start)% 31536000000)/2628000000); var age_day = Math.floor((((end - start)% 31536000000) % 2628000000)/86400000); $('#age').val(age_year +' year ' + age_month + ' month ' + age_day + ' day'); }, dateFormat: 'dd/mm/yy', maxDate: '+0d', yearRange: '1914:2014', buttonImageOnly: false, changeMonth: true, changeYear: true });
Html代码:
Date Age