2009-10-26 37 views

Respuesta

61

Puede recuperar la fecha mediante el uso de la función getDate:

$("#datepicker").datepicker('getDate'); 

El valor se devuelve como un objeto Date de JavaScript.

Si desea utilizar este valor cuando el usuario selecciona una fecha, puede utilizar el evento onSelect:

$("#datepicker").datepicker({ 
    onSelect: function(dateText, inst) { 
     var dateAsString = dateText; //the first parameter of this function 
     var dateAsObject = $(this).datepicker('getDate'); //the getDate method 
    } 
}); 

El primer parámetro es en este caso la fecha seleccionada como cadena. Use parseDate para convertirlo en un objeto de fecha JS.

Consulte http://docs.jquery.com/UI/Datepicker para obtener la referencia jQuery UI DatePicker completa.

+5

Esto me ayudó a convertir la fecha a un formato diferente después de 'onSelect'. Ejemplo: '$ .datepicker.formatDate (" yy-mm-dd ", $ (this) .datepicker (" getDate "));' – Dmitriy

+0

¡Gracias! Me salvó el día. var dateAsString = dateText; me ayudó a obtener la fecha seleccionada. – waghekapil

18
$(document).on("change", "#datepickerdiv", function() { 
     alert($(this).val()) 


    }) 

Esta es la respuesta más simple en Jquery.

+0

¡Genial! ¡Muy simple! – mccbala

1

Estaba tratando de trabajar con event cerca, pero también solía disparar cuando el calendario está abierto y hago clic en otro lugar en el pedregal. Eventualmente, el calendario pierde focus y close event. Así que encontré este;

onClose: function (dateText, inst) { 
      function isDonePressed() { 
       return ($('#ui-datepicker-div').html().indexOf('ui-datepicker-close ui-state-default ui-priority-primary ui-corner-all ui-state-hover') > -1); 
      } 
      if (isDonePressed()) { 
       var month = $("#ui-datepicker-div .ui-datepicker-month :selected").val(); 
       var year = $("#ui-datepicker-div .ui-datepicker-year :selected").val(); 
       $(this).datepicker('setDate', new Date(year, month, 1)); 
      } 
     } 
Cuestiones relacionadas