2013-04-24 13 views
17

mam ten przykładowy kod:Jak uzyskać datę, miesiąc, rok w jQuery UI datepicker?

<div id="calendar"></div> 
$(document).ready(function() { 
    $('#calendar').datepicker({ 
     dateFormat: 'yy-m-d', 
     inline: true, 
     onSelect: function(dateText, inst) { 
      var month = dateText.getUTCMonth(); 
      var day = dateText.getUTCDate(); 
      var year = dateText.getUTCFullYear(); 
      alert(day+month+year); 
    } 
    }); 
}); 

Kiedy uruchomić kod, nie ma błędu. Jak zdobyć to (date, month, year)?

+0

mogłaby być podobna do [to pytanie] (http://stackoverflow.com/questions/2562986/getdate-with-jquery-datepicker) – KevinIsNowOnline

Odpowiedz

41

Można użyć metody getDate():

$('#calendar').datepicker({ 
    dateFormat: 'yy-m-d', 
    inline: true, 
    onSelect: function(dateText, inst) { 
     var date = $(this).datepicker('getDate'), 
      day = date.getDate(), 
      month = date.getMonth() + 1,    
      year = date.getFullYear(); 
     alert(day + '-' + month + '-' + year); 
    } 
}); 

FIDDLE

+1

Dlaczego + 1 w date.getMonth() + 1? czy możesz wydalić? dzięki –

+1

miesiąc to 0..11, i trzeba przetłumaczyć na 1..12 – Atara

+0

mała edycja: day = date.getDay(), ... – doom4s

5

pomocą javascript obiekt Date.

$(document).ready(function() { 
    $('#calendar').datepicker({ 
     dateFormat: 'yy-m-d', 
     inline: true, 
     onSelect: function(dateText, inst) { 
      var date = new Date(dateText); 
      // change date.GetDay() to date.GetDate() 
      alert(date.getDate() + date.getMonth() + date.getFullYear()); 
    } 
    }); 
}); 
8

Witam, spróbuj obejrzeć to jsFiddle.

Użyłem tego kodu:

var day = $(this).datepicker('getDate').getDate(); 
var month = $(this).datepicker('getDate').getMonth(); 
var year = $(this).datepicker('getDate').getYear(); 

Mam nadzieję, że to pomaga.

+3

Teraz w 2015 roku metoda 'getYear()' jest przestarzała. Zamiast tego użyj 'getFullYear()'. https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/getYear –

0

co z tego prosty sposób)

$(document).ready -> 
$('#datepicker').datepicker(dateFormat: 'yy-mm-dd', onSelect: (dateStr) -> 
    alert dateStr # yy-mm-dd 
    #OR 
    alert $("#datepicker").val(); # yy-mm-dd