2013-04-24 170 views
17

我有這樣的示例代碼:如何在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); 
    } 
    }); 
}); 

當我運行的代碼,有一個錯誤。如何得到這個(date, month, year)

+0

可能是類似[這個問題](http://stackoverflow.com/questions/2562986/getdate-with-jquery-datepicker) – KevinIsNowOnline 2013-04-24 08:02:47

回答

41

您可以使用方法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

你爲什麼要+ 1 in date.getMonth()+ 1?你可以expalin嗎?謝謝 – 2016-03-09 07:03:10

+1

月份是0..11,需要翻譯成1..12 – Atara 2016-03-22 13:53:11

+0

小編輯: day = date.getDay(),... – doom4s 2016-06-16 12:34:59

5

使用JavaScript 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

嗨,你可以試試看這jsFiddle

我用這個代碼:

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

我希望這有助於。

+3

現在在2015年,getYear()方法已被棄用。改用'getFullYear()'。 https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/getYear – 2015-08-31 11:10:04

0

關於簡單的方法是什麼)

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