1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168
| <script language="JavaScript">
// Fonction de blocage de la saisie si elle n'est pas conforme
function bloque(formulaire,champ) {
// Creation d'un raccourci pour manipuler le champ
var controle = eval('document.' + formulaire + '.' + champ);
// On se place sur le champ incrimine
controle.focus();
// On selectionne le contenu pour faciliter la reprise de la saisie
controle.select();
}
// Fonction de controle des champs vides
// Debut du message qui sera affiche en cas d'un ou plusieurs champ(s) vide(s)
var mess = "Les champs suivants sont necessaires au traitement de votre demande :\n";
// Copie pour reinitialisation
var mess_init = "Les champs suivants sont necessaires au traitement de votre demande :\n";
// Variable marquant l'erreur (0 : tout va bien, 1 : blocage demande)
var necessaire = 0;
function vide(formulaire,champ,alerte) {
// Creation d'un raccourci pour manipuler le champ a tester
var controle = eval('document.' + formulaire + '.' + champ);
// Si c'est un champ de type mot de passe
if ( controle.type == 'password' ) {
if ( controle.value.length < 1 ) {
mess += alerte;
mess += "\n";
necessaire = 1;
}
}
}
// Fonction de validation du formulaire
function resultat(formulaire) {
// Si on a marque qu'au moins un champ etait vide
if ( necessaire == 1 ) {
// Affichage du message d'erreur avec tous les champs en erreur
alert(mess);
}
// Si aucun champ n'est vide
if ( necessaire == 0 ) {
var formu = eval('document.' + formulaire);
// Validation du formulaire
formu.submit();
}
// Quoi qu'il arrive, on re-initialise le message d'erreur pour permettre un autre passage des tests
mess = mess_init;
necessaire = 0;
}
// Fonction de controle de validite de la saisie
// Creation d'une variable pour marquer s'il y a incoherence de saisie ou pas
var probleme = 0;
function validite(formulaire,champ,format,mini,maxi) {
// Initialisation de la variable
probleme = 0;
// Les differents tests possibles :
RE = /^[A-Za-zàâäéèêëîïôùûç\s,'0-9\-]+$/;
// Creation d'un raccourci pour manipuler le champ a tester
var controle = eval('document.' + formulaire + '.' + champ);
// On ne fera les tests que si le champ est rempli d'au moins un caractere (pas vide)
if (controle.value.length > 0) {
// Si on ne trouve pas dans le champ l'expression reguliere recherchee
if (!RE.test(controle.value)) {
// Envoi d'une alerte
alert('Votre saisie est incorrecte.');
// On marque que la saisie n'est pas coherente
probleme = 1;
}
// Tests de longueur du champ (nombre de caracteres saisis)
// Si il a ete specifie '0', le test n'est pas effectue
if ( mini != 0 ) {
// Si la longueur de la saisie est inferieure au minimum demande
if ( controle.value.length < mini || controle.value.length > maxi ) {
// Envoi d'une alerte
alert('Vous devez saisir entre 8 et 15 caractères alphanumériques');
probleme = 1;
}
}
// Si on a marque qu'il y avait un probleme
if ( probleme == 1 ) {
// On active le blocage du champ
bloque(formulaire,champ);
}
}
}
// Fonction pour verifier la coherence de deux saisies de mot de passe
// Cette fonction se declenche a partir du second champ uniquement
function check_pw(formulaire,champ1,champ2) {
// Creation de deux raccourcis pour manipuler les champ a comparer
var prems = eval('document.' + formulaire + '.' + champ1);
var deuze = eval('document.' + formulaire + '.' + champ2);
// Si le premier champ n'est pas rempli
if (!prems.value) {
// Envoi d'une alerte
alert('Vous n\'avez pas saisi votre mot de passe');
// On active le blocage du champ
bloque(formulaire,champ1);
}
// Si le premier champ est rempli
else {
// Si la saisie des deux champ est differente
if ( prems.value != deuze.value ) {
// Envoi d'une alerte
alert('La confirmation de votre mot de passe n\'est pas exacte.');
// Reinitialisation des deux champs
deuze.value = "";
prems.value = "";
// On active le blocage du champ
bloque(formulaire,champ1);
}
}
}
// Fonction pour tester les champs vides (une ligne par champ)
// Pour autoriser un champ vide, ne pas le referencer dans la liste
function check_vide() {
vide('formulaire','Password2','- Votre mot de passe');
vide('formulaire','Password3','- Confirmation du mot de passe');
// Validation (sous conditions) du formulaire
resultat('formulaire');
}
</script> |
Partager