begin process at 2012 05 29 07:54:39
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Javascript / DHTML / Ajax

 > 

CSS

 > 

Général

 > 

controle de formulaire


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

controle de formulaire

jeudi 23 avril 2009 à 12:23:57 | controle de formulaire

cyrilherve

bonjour a tous ,,
j'ai un formulaire que je veux controler avec javascript, je veux dans un premier temps m'assurer que tout les champs sont remplis, si c'est le cas le formulaire est soumis sinon , une boite de dialogue s'affiche en precisant tout les champs qui n'ont pas etes remplis.
voici mon script :

[CODE]
<script language="javascript">
// fontion de controle du formulaire
 function controle()
 {
   message= new array(); // tableau pour garder les messages
   var rep =0; // variable pour tester si oui ou non tout les champs du formulaire sont remplis
   var i=0; // compteur
   
   for (i=0; i<12; i++) // boucle pour initialiser le tableau
    {
      message[i]='';
    }
    
 // recuperation du contenu des champs du formulaire et stockage dans des variables  
   var a=document.expedition.nombord.value;
 
   var b=document.expedition.provenance.value;
   var c=document.expedition.destination.value;
   
   var d=document.expedition.nomexp.value;
   var e=document.expedition.prenomexp.value;
   var f=document.expedition.villexp.value;
   var g=document.expedition.ruexp.value;
   var h=document.expedition.telephonexp.value;
   
   var i=document.expedition.nomdes.value;
   var j=document.expedition.prenomdes.value;
   var k=document.expedition.villedes.value;
   var l=document.expedition.ruedes.value;
   var m=document.expedition.telephonedes.value;
 
 // test si les champs sont remplis ou pas et ajoute un messages d'erreurs dans le tableau  
     if (a=="")
        {
          message[0]=" Entrez un numero de bordereau! /n ";
        }
     if (b=="")
        {
          message[1]=" vous devez preciser la provenance du colis ";
        }
     if (c=="")
        {
          message[2]=" vous devez preciser la destination du colis ";
        }
     if (d=="")
        {
          message[3]=" vous devez preciser le nom de l'expediteur ";
        }
     if (e=="")
        {
          message[4]=" vous devez preciser le prenom de l'expediteur ";
        }
     if (f=="")
        {
          message[5]=" vous devez preciser la ville de l'expediteur ";
        }  
     if (g=="")
        {
          message[6]=" vous devez preciser la rue de l'expediteur ";
        }

     if (h=="")
        {
          message[7]=" vous devez preciser le numero telephone de l'expediteur ";
        }
        
     if (i=="")
        {
          message[8]=" vous devez preciser le destinataire ! ";
        }
     if (j=="")
        {
          message[9]=" vous devez preciser le prenom du destinataire ";
        }
     if (k=="")
        {
          message[10]=" vous devez preciser la ville du destinataire ";
        }
     if (l=="")
        {
          message[11]=" vous devez preciser la rue du destinataire ";
        }
     if (m=="")
        {
          message[12]=" vous devez preciser le numero de telephone du destinataire ";
        }
            // verifie si tout les champs sont remplis ou pas avec la variable rep
              for (i=0; i<12; i++)
                {
                 {
                  if(message[i]!='')
                   rep=1;
                 }
                }
            // test la valeur de  rep  
             if (rep=0)            
              {
                for (i=0; i<12; i++)
                 {
                  alert("message[i]");// affiche une boite de dialogue avec les msg d'erreurs correspondant si rep != de 0
                 }
              }
             else
              {
                document.expedition.submit();// soumet le formulaire si tout les champs sont remplis    
              }
 }
</script>

[/CODE]
seulmnt quand je valide mon formulaire ,,,rien ne se passe . comment est que je peux arranger ça svp ?
merci pour vos reponse.
jeudi 23 avril 2009 à 12:32:37 | Re : controle de formulaire

Orange73

Membre Club
Hello,

recherche google : liveValidation


-- Orange73 --
"L'homme n'est pas fait pour travailler, la preuve c'est que cela le fatigue" (Voltaire)
jeudi 23 avril 2009 à 12:39:35 | Re : controle de formulaire

Bul3

Membre Club


Bonjour,
1° et le html ? faut qu'on l'invente ?
2° tu n'as pas d'erreurs de syntaxe ?  voir (**)
3° il vaut mieux respecter le traitement standard, à savoir :
    <form action..... onsubmit="return(controle());"... >
        tes champs
        <input type="submit" />
    </form>
    et dans controle, pas de formulaire.submit() !
    return false s'ils y a des erreurs, return true sinon
pourquoi cet array,, ces variables intermédiaiares et tout le toutim ?

controle du style :
var lib="";
if ( document.expedition.nombord.value=="" )
    lib+=" Entrez un numero de bordereau! \r\n";
if ( document.expedition.provenance.value=="" )
    lib+="vous devez preciser la provenance du colis\r\n";
.....
if ( lib.length>0 )
       { alert(lib);
         return false;
       }
else { return true; }

Cordialement [mon Site] [M'écrire] Bul
(**)
NavigateursQuelques Explications

Chrome
contrôler page actuelle / Options pour développeurs
/ Console Javascript

FireFox
Outils / Console d'erreurs
et mieux : télécharger FireBug

Internet
Explorer
activer le deboggage : Outils/options Internet/Avancés
dans la liste, sous "Navigation" : décocher
o Afficher une notification de chaque erreur de script
o Désactiver le débogage de Scripts (Internet Explorer)
et mieux (pour IE < 8) : télécharger le Debogger IE
voir aussi : DebugBar et Companion JS

K-Meleon
Outils / Console d'erreurs

Opera
Outils / Avancé / Console d'erreurs

Safari
Debug / Show JavaScript Console
° modifier Fichier com.apple.Safari.plist situé dans le
répertoire : Support:\Documents and Settings\utilisateur
\Application Data\Apple Computer\Safari\Preferences\
y ajouter <key>IncludeDebugMenu</key>
<true/>

jeudi 23 avril 2009 à 14:02:57 | Re : controle de formulaire

kazma

Administrateur CodeS-SourceS
bonjour

et aussi si j'ai bien compris si il y a juste une erreur on se coltine les douzes messages a ta plase je ferait une variable globale dans laquel tu additionnerait chaque messages ou il y a erreur et que tu afficherait a la fin la variable commencerait par vous avez oublier de

var erreur='vous avez oublier de cocher'
jeudi 23 avril 2009 à 17:10:02 | Re : controle de formulaire

cyrilherve

stp est que  je peux savoir precisemnet ou je peux telcharger livevalidation tout les que j'ai retrouve sur     google ne foncionne pas
merci

jeudi 23 avril 2009 à 17:11:35 | Re : controle de formulaire

Orange73

Membre Club
ICI :

[ Lien ]


-- Orange73 --
"L'homme n'est pas fait pour travailler, la preuve c'est que cela le fatigue" (Voltaire)
jeudi 23 avril 2009 à 17:14:02 | Re : controle de formulaire

cyrilherve

j'ai refais mon script finalement de facon simple
<script language="javascript">

 function controle()
 {
   var a=document.expedition.nombord.value;
 
   var b=document.expedition.provenance.value;
   var c=document.expedition.destination.value;
  
   var d=document.expedition.nomexp.value;
   var e=document.expedition.prenomexp.value;
   var f=document.expedition.villexp.value;
   var g=document.expedition.ruexp.value;
   var h=document.expedition.telephonexp.value;
  
   var i=document.expedition.nomdes.value;
   var j=document.expedition.prenomdes.value;
   var k=document.expedition.villedes.value;
   var l=document.expedition.ruedes.value;
   var m=document.expedition.telephonedes.value;
  
     if (a=="")
        {
          alert(" Entrez un numero de bordereau! ");
          document.expedition.num_bo.focus();       
        }
     else    
           if (b=="")
             {
               alert(" vous preciser la provenance du colis ");
               document.expedition.provenance.focus();       
             }
    else         
           if (c=="")
             {
               alert(" vous devez preciser la destination du colis");
               document.expedition.destination.focus();       
             }
    else             
           if (d=="")
             {
               alert(" vous devez preciser le nom de l'expediteur");
               document.expedition.nomexp.focus();       
             }
    else         
           if (e=="")
             {
               alert(" vous devez preciser le prenom de l'expediteur ");
               document.expedition.prenomexp.focus();       
             }
    else         
           if (f=="")
             {
               alert(" vous devez preciser la ville de l'expediteur ");
               document.expedition.villexp.focus();       
             } 
    else         
           if (g=="")
             {
               alert(" vous devez preciser la rue de l'expediteur ");
               document.expedition.ruexp.focus();       
             }
    else
           if (h=="")
             {
               alert(" vous devez preciser le telephone de l'expediteur ");
               document.expedition.num_bo.focus();       
             }
           else
               if (isNaN(h))
               alert (" le numero de telephone doit etre entierement numerique ");
    else   
           if (i=="")
             {
               alert(" vous devez preciser le destinataire ");
               document.expedition.nomdes.focus();       
             }
    else         
           if (j=="")
             {
              alert(" vous devez preciser le prenom du destinataire ");
              document.expedition.prenomdes.focus();       
             }
    else         
           if (k=="")
             {
              alert("  vous devez preciser la ville du destinataire ");
              document.expedition.villedes.focus();       
             }
    else             
          if (l=="")
            {
              alert(" vous devez preciser une rue pour le destinataire ");
              document.expedition.ruedes.focus();       
            }
    else       
          if (m=="")
            {
             alert(" vous devez preciser le telephone du destinataire ");
             document.expedition.telephonedes.focus();       
            }
          else
             if (isNaN(m))
             alert (" le numero de telephone doit etre entierement numerique ");
     else
          document.expedition.submit();   
 }
</script>
et la marche simplement .
merci pr  vos reponse
jeudi 23 avril 2009 à 17:49:48 | Re : controle de formulaire

Bul3

Membre Club
>>document.expedition.submit();
quelle horreur....
le visiteur qui n'a pas activé le javascript
n'a pas le droit d'envoyer le formulaire ?

ne signaler qu'une erreur  là où il peut y en avoir plusieurs,
c'est pénible pour ce même visiteur

mais bon, chacun fait comme il le sent après tout....
@+

jeudi 23 avril 2009 à 19:36:48 | Re : controle de formulaire

kazma

Administrateur CodeS-SourceS
quand tu fait
document.expedition.nomdes.focus(); 

n'oubli pas de rajouter return false juste apres pour arrêter la fonction et éviter d'envoyer le formulaire


Cette discussion est classée dans : message, var, document, if, expedition


Répondre à ce message

Sujets en rapport avec ce message

aide scroll SVP [ par blinix123 ] Bonjour,J'ai un code javascript (je crois) qui m'affiche un message à coté de ma souris (ici "bienvenue"  ) mais lorsque je descend dans ma fenetre av aide scroll SVP [ par blinix123 ] Bonjour,J'ai un code javascript (je crois) qui m'affiche un message à coté de ma souris (ici "bienvenue"  ) mais lorsque je descend dans ma fenetre av Player multi format sécuriter java & php [ par c2bomb ] bonjour a tous,je cherche a afficher mon player,dans une fenetre style popup,mais hélas je suis vraiment nulle en javascript...si quelq'un peut m'aide 2 menuS deroulants java dans une page [ par DEVLYNE ] Bonjour!Sachez que je suis uns très grande débutante mais j'ai un petit souci.J'utilise un logiciel gratuit: Coffee Cup DHTML menu pour faire mes menu Compilation conditionnelle. [ par A3nigma64 ] J'ai trouvé un script assez bien pour faire un compte à rebours mais voila lorsque je l'applique sur une de mes page web le compte à rebours ne s'affi fausse popup [ par macone59 ] Je cherche à faire une fausse popup. C'est à dire qu'au depart j'ai une img visible puis au sur vol de celle-ci une image apparait en plus grand.Voici Affichier un texte avec la position X et Y [ par bshaka ] Bonjour à tous,j'ai trouvé sur le web cette fonction qui affiche date et heure à une position x et y, pour l'appeler, je fais :InitHorloge(265,56,"fon Afficher texte avec X et Y [ par bshaka ] Bonjour à tous,j'ai trouvé sur le web cette fonction qui affiche date et heure à une position x et y, pour l'appeler, je fais :InitHorloge(265,56,"fon Affichage d'horloge [ par bshaka ] Bonjour à tous,J'ai trouvé cette fonction pour afficher l'horloge à une position X Y sur le net, sauf qu'elle n'affiche pas l'horloge à la bonne posit FORMULAIRE champs obligatoires boutons radio [ par ju0123456789 ] Bonjour,Pour mon site web, je suis en train de créer un formulaire de commande, et j'ai créé un script qui oblige l'utilisateur de rentrer les chamsp


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,671 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales