Bonjour

je souhaite modifier le format de date donnée dans un input

Ainsi, l'utilisateur frappe par exemple 20-12-2008. La saisie est correcte mais je désire récupérer dans le post la date sous la forme 2008-12-20 après avoir soumis le formulaire

Le code que j'utilise actuellement est
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
var valeur_on=document.forms[formulaire].elements.gag_dateon.value;
var valeur_off=document.forms[formulaire].elements.gag_dateoff.value;
var reg_on=new RegExp("^(\d+)-(\d+)-(\d+)\s+(\d+):(\d+):(\d+)$","gi");
var reg_off=new RegExp("^(\d+)\-(\d+)\-(\d+)\s+(\d+)\:(\d+)\:(\d+)$","gi");
if ((!reg_on.test(valeur_on))||(!reg_off.test(valeur_off)))
	return alert("Format Datetime Invalide");
document.forms[formulaire].elements.gag_dateon.value=(reg_on.$3+"-"+reg_on.$2+"-"+reg_on.$1+" "+reg_on.$4+":"+reg_on.$5+":"+reg_on.$6);
document.forms[formulaire].elements.gag_dateoff.value=(reg_off.$3+"-"+reg_off.$2+"-"+reg_off.$1+" "+reg_off.$4+":"+reg_off.$5+":"+reg_off.$6);
valeur_on retourne la date sous une bonne forme (20-12-2008 00:00:00)
jusque là pas de soucis!

mais reg_on.test(valeur_on) me retourne false

pour quelle raison? mon expression régulière me semble correcte pourtant!