Bonjour � tous !
J'ai un probl�me .
J'ai un champ input dans lequel on tape une date au format :
dd/mm/yyyy hh:mm:ss
Je fais divers test avec l'�v�nement onkeypress, et j'aimerais, avant de renvoyer true ou false pour que le carract�re s'affiche ou pas, tester l'ensemble avec une expression reguli�re
Voici ce que j'ai fait :
Ca marcherais, sauf qu'il faudrais que l'expression marche d�s que l'utilisateur a commenc� a taper la date, et non une fois qu'elle est totalement termin�e
Code : S�lectionner tout - Visualiser dans une fen�tre � part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 // On récupère la valeur de la touche en fonction de son code ASCII var touche = String.fromCharCode(key); // On génère le résultat si la fonction renvoie true, pour la tester avec une expression régulière var final = t.value + touche; // On crée l'expression regulière (dd/mm/yyyy hh:mm:ss) reg = /[0-3][0-9]\/[0-1][0-9]\/[1-2][0-9][0-9][0-9]\s[0-2][0-9]\:[0-5][0-9]\:[0-5][0-9]/; // Si ca ne remplie pas l'expression régulière if(!reg.test(final)) return false;
Je m'explique :
l'utilisateur veux rentrer '29/12/2008 14:25:23'
il tape 2 (renvoie false)
il tape 9 (renvoie false)
il tape / (renvoie false)
...
et ca renvoie true qu'a la fin
je voudrais par exemple que ca renvoie false uniquement si il tape des caract�res invalides
il tape g (renvoie false)
il tape 2 (renvoie true)
Je pense pas etre tr�s clair, et j'en suis d�sol� .
Partager