2013-04-24 36 views
17

Tôi có mã mẫu này:Làm thế nào để có được ngày, tháng, năm trong 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); 
    } 
    }); 
}); 

Khi tôi chạy mã, có lỗi. Làm thế nào để có được điều này (date, month, year)?

+0

Có thể là tương tự như [câu hỏi này] (http://stackoverflow.com/questions/2562986/getdate-with-jquery-datepicker) – KevinIsNowOnline

Trả lời

41

Bạn có thể sử dụng phương pháp 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

tại sao bạn + 1 trong date.getMonth() + 1? bạn có thể expalin? cảm ơn –

+1

tháng là 0..11 và cần được dịch sang 1..12 – Atara

+0

chỉnh sửa nhỏ: ngày = date.getDay(), ... – doom4s

5

Sử dụng đối tượng Date javascript.

$(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

Xin chào, bạn có thể thử xem jsFiddle này.

tôi đã sử dụng mã này:

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

Tôi hy vọng điều này sẽ giúp.

+3

Hiện tại, phương thức 'getYear()' không được dùng nữa. Sử dụng 'getFullYear()' để thay thế. https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/getYear –

0

gì về điều đó cách đơn giản)

$(document).ready -> 
$('#datepicker').datepicker(dateFormat: 'yy-mm-dd', onSelect: (dateStr) -> 
    alert dateStr # yy-mm-dd 
    #OR 
    alert $("#datepicker").val(); # yy-mm-dd 
Các vấn đề liên quan