Comment obtenir la valeur de date sélectionnée en utilisant Bootstrap Datepicker?

À l’aide de jquery et de Bootstrap Datepicker, comment puis-je obtenir la nouvelle valeur de date que j’ai sélectionnée à l’aide de Bootstrap Datepicker? Pour votre information, j’utilise Rails 3 et Coffescript.

J’ai configuré le datapicker en utilisant:

  'get_data' %> $(".datepicker").datepicker endDate: new Date format: "yyyy-mm-dd" autoclose: true minViewMode: 1 todayBtn: "linked" 

Lorsqu’un utilisateur clique sur le bouton “Obtenir les données à l’aide de la date” situé à côté, j’utilise jQuery pour obtenir la nouvelle valeur de date définie par le sélecteur de date, empêcher le formulaire de soumettre et exécuter une demande ajax utilisant cette valeur de date. Tout le ajax fonctionne bien, sauf pour obtenir la nouvelle valeur de date correcte. J’ai essayé les deux opérations suivantes et cela ne me donne pas la nouvelle date, mais uniquement les valeurs par défaut que j’ai définies initialement.

 sd1 = $('#startdate').attr('value') console.log sd1 sd2 = $('#startdate').attr('data-date')) console.log sd2 

Je me sens vraiment stupide en ce moment, mais je ne peux pas trouver comment obtenir la nouvelle valeur de date définie par le bootstrap datepicker.

Tu peux essayer ça

 $('#startdate').val() 

ou

 $('#startdate').data('date') 

Pour bootstrap datepicker, vous pouvez utiliser:

 $("#inputWithDatePicer").data('datepicker').getFormattedDate('yyyy-mm-dd'); 

Bootstrap datepicker (le premier résultat de la recherche bootstrap datepickcer) a une méthode pour obtenir la date sélectionnée.
http://bootstrap-datepicker.readthedocs.org/fr/release/methods.html#getdate

avoir un rendez-vous:
Renvoie un object de date localisé représentant l’object de date interne du premier datepicker de la sélection.
Pour les sélecteurs multidates, renvoie la dernière date sélectionnée.

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

ou

 $('.datepicker').datepicker("getDate").valueOf() 

En général,

 $('#startdate').data('date') 

est le meilleur parce que

 $('#startdate').val() 

ne fonctionne pas si vous avez un datepicker “inline”

cela fonctionne avec moi pour datepicker ligne (et l’autre)

 $('#startdate').data('datepicker').date 

Si vous avez déjà un certain nombre de dates en surbrillance et souhaitez déterminer la dernière date de clic, vous devez disposer des éléments suivants:

 $('#startdate').data('datepicker').viewDate 

viewDate renvoie un object de date JavaScript, vous devrez donc le gérer en conséquence.

Essayez ceci en utilisant HTML comme ici:

 var myDate = window.document.getElementById("startdate").value; 

Si vous ne voulez pas la date au format texte intégral, vous pouvez le faire comme ceci:

 $('#your-datepicker').data().datepicker.viewDate 

J’ai essayé avec les réponses ci-dessus, mais elles n’ont pas fonctionné pour moi; Donc, comme indiqué par user3475960, j’ai utilisé $('#startdate').html() qui m’a donné le texte html, donc je l’ai utilisé au besoin … Peut-être que quelqu’un l’utilisera ..

Il y a beaucoup de solutions ici mais probablement la meilleure qui fonctionne. Vérifiez la version du script que vous souhaitez utiliser.

Bien au moins je peux vous donner ma solution de travail à 100% pour

version: 4.17.45

bootstrap-datetimejs https://github.com/Eonasdan/bootstrap-datetimepicker Droits d’auteur (c) 2015 Jonathan Peterson

JavaScript

 var startdate = $('#startdate').val(); 

La sortie ressemble à: 12.09.2018 03:05