web-dev-qa-db-fra.com

Bootstrap datepicker - comment obtenir la date sous forme de chaîne au bon format?

J'utilise Bootstrap datepicker . La réponse est probablement évidente, mais je ne sais pas comment obtenir la date sélectionnée sous forme de chaîne au format spécifié. J'ai utilisé:

<div id="myDate" data-date-format="yyyy-mm-dd">
  <input type="text">
</div>

Et dans mon javascript:

var value = $("#myDate").datepicker("getDate");

Mais il renvoie une date, pas une chaîne au format aaaa-mm-jj.

14
ccleve

Le data-date-format="mm/dd/yyyy" doit être défini sur l'entrée:

<input type="text" data-date-format="MM/DD/YYYY">

Votre jQuery doit également être changé en:

var value = $("#myDate input").datepicker("getDate");

Ou vous pouvez simplement garder les choses simples sans encapsuler div et avec cela votre jQuery d'origine fonctionnerait bien et vous n'auriez pas à spécifier input:

<input type="text" id="myDate" data-date-format="YYYY-MM-DD">

Suggestion
Je recommanderais de créer une classe pour formater le sélecteur de date. Pour que vous puissiez ensuite ajouter le .datepicker classe à n'importe quel champ de saisie et cela fonctionnerait sans avoir à spécifier une autre variable.

Violon
Voici le code de travail avec alerte de date http://jsfiddle.net/doitlikejustin/HFuDg/1/

18
doitlikejustin

Si vous voulez que la valeur soit une chaîne, utilisez: var value = $ ("# myDate input"). Val ();

La méthode getDate renvoie un objet

2
Plasebo
var value = $("#myDate").datepicker("getFormattedDate");
2
Alexander Fedotov