J'ai une entrée de
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <input id="date-input" type="date"/>
jQuery("#date-input").change(function() {
console.log(jQuery(this).val());
});
le type date ou parfois un sélecteur de date, si le type d'entrée date n'est pas pris en charge par le navigateur. Les ID sont toujours les mêmes. Alors maintenant, je cherche un moyen de reformater la valeur reçue au format allemand.
Par exemple 2019-07-07 à 07.07.2019.
Voici mon code:
Avez-vous des idées pour y faire face? J'ai regardé un peu partout mais je ne trouve pas de vraie et bonne solution pour moi.
3 Réponses :
Pour y parvenir, vous pouvez créer un objet Date à partir de la valeur de la chaîne, puis appeler toLocaleString () à ce sujet. Si nécessaire, vous pouvez forcer le formatage de la culture de-DE comme argument de cet appel de méthode:
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <input id="date-input" type="date" />
$("#date-input").change(function() {
var dateString = $(this).val();
console.log(dateString);
var deDate = new Date(dateString);
console.log(deDate.toLocaleDateString('de-DE', {
year: "numeric",
month: "2-digit",
day: "2-digit",
}));
});
Merci pour cette réponse. J'aime celui-ci mais la date est maintenant le 9.8.2019. Il me manque les zéros de tête: o.
alert (deDate.toLocaleDateString ("de-DE", {année: "numérique", mois: "2 chiffres", jour: "2 chiffres",}));
J'étais sur le point de dire que vous pouvez utiliser un objet de paramètres, mais il semble que vous l'ayez déjà fonctionné :) J'ai mis à jour la réponse malgré tout.
En gros comme ci-dessous
jQuery("#date-input").on("blur",function() {
console.log(jQuery(this).val().split("-").reverse().join("-")); // dd-MM-yyy format
});
Essayez ceci, j'espère que cela vous aidera
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <input id="date-input" type="date"/>
jQuery("#date-input").change(function() {
var val = jQuery(this).val().split('-').reverse().join('.');
console.log(val)
});