Validation d'un formulaire [Résolu]

Signaler
Messages postés
89
Date d'inscription
samedi 30 octobre 2004
Statut
Membre
Dernière intervention
16 juin 2008
-
Messages postés
1
Date d'inscription
mardi 20 mars 2007
Statut
Membre
Dernière intervention
27 avril 2007
-
Bonjour ,
je suis entrain de créer un site web en php, et j'ai des formulaires partout.
J'ai un fichier javascript qui contient les fonctions de validation des formulaires,

Quelle idée me donnerez vous pour essayer de mettre en place une seule fonction "verifier_formulaire" qui pourra faire tous les tests possibles sur n'importe quel  formulaire, surtout qu'il ya des champs qu'on retrouve dans un formulaire et qu'on ne rretrouve pas dans un autre.

Merci

12 réponses

Messages postés
3426
Date d'inscription
lundi 26 décembre 2005
Statut
Membre
Dernière intervention
14 janvier 2011
14
B
onjour...
une technique Brut de pomme, comme dirait un de mes copains Normand, et de tout mettre effectivement dans la même fonction et de tester l'existence de l'obj avant de faire la vérification...

//----------------
function Verif_All(){
  Obj = document.getElementById( 'CHAMP_1');
  if( Obj){
    // Test sur Champ 1
  }
  Obj = document.getElementById( 'CHAMP_2');
  if( Obj){

    // Test sur Champ 2
  }
}
ce n'est pas trés élégant mais cela marche...

;0)
Messages postés
450
Date d'inscription
samedi 16 avril 2005
Statut
Membre
Dernière intervention
18 avril 2007
2
Donc tu remplace la ligne if(document.getElementById(champs[i])) par
if(document.all[champs[i]])
Ou
if(document.getElementsByName(champs[i])[0])

<hr /><hr />STFOU
Messages postés
3426
Date d'inscription
lundi 26 décembre 2005
Statut
Membre
Dernière intervention
14 janvier 2011
14
Remplaces simplement les document.getElementById
par des document.FROM comme tu as déjà du le mettre

//----------------
function Verif_All(){
  Obj = document.FORM.CHAMP_1;
  if( Obj){
    // Test sur Champ 1
  }
  Obj = document.FORM.CHAMP_2;
  if( Obj){
    // Test sur Champ 2
  }
}
;0)
Messages postés
13616
Date d'inscription
jeudi 13 février 2003
Statut
Membre
Dernière intervention
15 octobre 2013
32
Bonjour,

var champs = document. monFormulaire .elements;
for(i =0;i<champs.length;i++)

    switch(champs[i].type)   // ou ce qu'on veut : name... enfin ce qui permet de tester...
    {   
        case "select" :...
        case "text" : ...

ou alors, ch'tit exemple : un "truc automatique" ici
<hr />


Cordialement            Bul     [mon Site]     [M'écrire]



<hr />
Messages postés
450
Date d'inscription
samedi 16 avril 2005
Statut
Membre
Dernière intervention
18 avril 2007
2
Bonjour, tester des formulaires ?



http://www.javascriptfr.com/recherche.aspx?r=verifier+formulaire&tr=source










<hr />



<hr />
<sup>
STFOU
</sup>
Messages postés
450
Date d'inscription
samedi 16 avril 2005
Statut
Membre
Dernière intervention
18 avril 2007
2
PetoleTeam >> Ou alors une boucle for, avec un tableau du nom des champs :
var champs=["champ_1","champ_2","mot_de_passe1","champ_3"]//etc...
for(i=0;i<champs.length;i++)
{
if(document.getElementById(champs[i]))
{
//test
}
}

<hr /><hr />STFOU
Messages postés
89
Date d'inscription
samedi 30 octobre 2004
Statut
Membre
Dernière intervention
16 juin 2008

merci pour vos réponses, 
 
pour le paramètre de la fonction getElementById je me la valeur du parametre "name" des elements  du formulaire??
Messages postés
450
Date d'inscription
samedi 16 avril 2005
Statut
Membre
Dernière intervention
18 avril 2007
2
Euh non, tu met met la valeur id :

document.getElementById("l'id de ton champ");

<hr /><hr />STFOU
Messages postés
89
Date d'inscription
samedi 30 octobre 2004
Statut
Membre
Dernière intervention
16 juin 2008

je vais devoir rajouter ce champ à tous les elements de mes formulairs :S
n'y aura-t-il pas  une autre fct qui traite les noms et non pas les id!!
Messages postés
450
Date d'inscription
samedi 16 avril 2005
Statut
Membre
Dernière intervention
18 avril 2007
2
Oui, tu peux avec document.all[], mais je crois que c'est compatible IE uniquement.
Il y a aussi document.getElementsByName()[0];

<hr /><hr />STFOU
Messages postés
89
Date d'inscription
samedi 30 octobre 2004
Statut
Membre
Dernière intervention
16 juin 2008

Mille Merci à tous, pour le moment ca marche :) 
Messages postés
1
Date d'inscription
mardi 20 mars 2007
Statut
Membre
Dernière intervention
27 avril 2007

<ol>
<li>
[javascript:Insert_Emoticon('/imgs2/smile_dead.gif');

]



















addazDazdADZdzAAA</li>
</ol>