2012-10-02 75 views
0

我正在使用日期選擇器來選擇出生日期。 我有三個輸入框。 輸入後31/08/1991 出生日期自動計算年月和日像21 year1 months2 Days如何從出生日期獲得年月日

$(function() { 
     $("#dob").datepicker({ 
      changeMonth : true, 
      changeYear : true, 
      defaultDate: '-30yr', 
      yearRange: 'c-25:c+35', 

      onSelect: function(selectedDate) { 
       var a = $("#dob").datepicker("getDate"); 

      var today = new Date(); 
       var age = Math.floor((today-a)/(24 * 60 * 60 * 1000)); 
       var year = Math.round(age/365); 
       var month = Math.round(age/30); 

       $('#ages').val(year); 


      } 
     }); 
     $("#dob").datepicker("option", "dateFormat", 'dd-mm-yy'); 

     $("input:submit, a, button", ".registerSubmit").button(); 



    }); 

回答

0

您可以使用onselect事件來獲取日期。

在你的情況,$(#DATE2)表示下一個生日

$('#date1').datepicker({ 
    onSelect: function(dateText, inst) { 
     var d1=new Date(dateText); 
     // get date from other text field 
     var d2=new Date($('#date2').val()); 
     // d2 -d1 gives result in milliseconds 
     // calculate number of days by Math.abs((d2-d1)/86400000, as 24*3600*1000 = 86400000 
     // and populate it to some text field #textfield 
     $('#textfield').val((Math.abs((d2-d1)/86400000))); 
    } 
}); 

相關主題(創意來自喬金姆 - 約翰森):jQuery UI Datepicker difference in days