Accueil > Forum > > > > Problème de teste de formulaire
Problème de teste de formulaire
mardi 4 septembre 2007 à 14:12:20 |
Problème de teste de formulaire

kaygee
|
Salut,
j'ai un petit problème avec mon form
J'ai dans une premier temps créer une fonction de teste d'email de confirmation
function verif_conf_mail() { if(document.getElementById("eMail").value!=document.getElementById("eMail_conf").value) { alert("les zones email et confirmation d'email doivent être identiques"); document.getElementById("eMail_conf").value = ''; return false; } }
rien de compliqué
le problème est, ce formulaire est un form pré-rempli avec des variable get recu de la page précédente
la première fois que j'arrive sur la page et que je me trompe dans mon email, il m'affiche ma boite alert, mais ensuite continue vers la page suivante sans s'arreter. j'ai un code a entrer dans le formulaire, celui ci testé sur la page suivante et me renvoi a mon form, si je me trompe a ce moment la, il stop en cas d'erreur. J'utilise IE7, je ne comprend pas pourquoi pourriez vous m'aider?
|
|
mardi 4 septembre 2007 à 14:17:19 |
Re : Problème de teste de formulaire

Zobibol
|
Salut, tu comprends pas pourquoi tu utilises ie7 ? ;o) Bon, pour être plus sérieux, ta méthode est utilisée lors du submit du formulaire je présume ( sans code...) ! Il faut donc que sur le submit tu retourne false !
[o-_-o]
|
|
mardi 4 septembre 2007 à 14:27:21 |
Re : Problème de teste de formulaire

kaygee
|
Voila pour être clair, mais ma fonction retourne un false en cas de non correspondance
<form method="post" action="MCmultiConf.asp" name="contact_form" id="contact_form" class="formu" onSubmit="verif_conf_mail();return validateForm(this,'Error(s)');">
J'utilise IE parce que j'y suis bien obligé, sinon cette M.... microsofesque je m'en passe largement ;o)
|
|
mardi 4 septembre 2007 à 14:34:36 |
Re : Problème de teste de formulaire

Zobibol
|
bah voilà, le truc c'est que même si ta méthode verif_conf_mail(); retourne faux, le submit ne le prendra pas en compte, mais prendra en compte le retour de validateForm(this,'Error(s)'); ( qui devrait du coup être à faux aussi ). pourquoi ne pas intégrer la validation de l'email dans la méthode validateForm ?
[o-_-o]
|
|
mardi 4 septembre 2007 à 14:47:47 |
Re : Problème de teste de formulaire

kaygee
|
c'est un code que je n'ai pas crée personnellement et donc pas toujours très clean et comme il est utilisé par pas mal de page, je n'ai pas le droit de le refaire pour le moment.
ceci me fait arriver au problème suivant avec le validateform qui lui teste si les champs sont vides ou non
je recois donc des variables en post que j'affiche automatiquement dans mes textbox, j'ai aussi un textbox code qui est testé sur la page suivante et si erreur me fait revenir a mon form.
au premier passage dans le form, si j'efface les informations placée automatiquement et que je vais un submit, il ne bloque, comme si mon textbox n'était pas vide, je n'y comprend rien du tout
/ Boucle de validation function validateForm(form,title) { var err=0; var msg='<fieldset id="error" class="vis"><legend>' + title + '</legend><ul>'; return_validateInput = validateInput(document.getElementsByTagName("input")); err+=return_validateInput[0]; msg+=return_validateInput[1]; return_validateInput = validateInput(document.getElementsByTagName("select")); err+=return_validateInput[0]; msg+=return_validateInput[1]; validateInput(document.getElementsByTagName("textarea")); err+=return_validateInput[0]; msg+=return_validateInput[1]; if (err==0) { return(true); } else { msg+="</ul></fieldset>"; document.getElementById("error").innerHTML=msg; return false; } } function validateInput(domElements) { var validateInput_err=0; var validateInput_msg=''; for (i = 0; i < domElements.length; i++) { if (domElements[i].className=="oblig") { if (!(isNotEmpty(domElements[i]))) { validateInput_err++;validateInput_msg+="<li>" + domElements[i].title + "</li>"; } } if (domElements[i].name.substring(0,5)=="eMail") { if (!(isEMailAddr(domElements[i]))) { validateInput_err++;validateInput_msg+="<li>" + domElements[i].title + "</li>"; } } if (domElements[i].name.substring(0,4)=="nbre") { if (!(isNumber(domElements[i]))) { validateInput_err++;validateInput_msg+="<li>" + domElements[i].title + "</li>"; } } } return_validateInput = new Array(); return_validateInput[0] = validateInput_err; return_validateInput[1] = validateInput_msg; return return_validateInput; } // Vérifie si un champ a bien été renseigne function isNotEmpty(elem) { var str = elem.value; var re = /.+/; if(!str.match(re)) { setTimeout("focusElement('" + elem.form.name + "', '" + elem.name + "')", 0); return false; } else { return true; } } // Vérifie si l'adresse e-mail est valide function isEMailAddr(elem) { isNotEmpty(elem); var str = elem.value; var re = /^[\w-]+(\.[\w-]+)*@([\w-]+\.)+[a-zA-Z]{2,7}$/; if (!str.match(re)) { //elem.form.error.className='vis'; setTimeout("focusElement('" + elem.form.name + "', '" + elem.name + "')", 0); return false; } else { return true; } } //Vérifie si un champ ne contient que des chiffres function isNumber(elem) { isNotEmpty(elem); var str = elem.value; var re = /^[-]?\d*\.?\d*$/; str = str.toString(); if (!str.match(re)) { /*alert("Veuillez respecter le format de date de naissance suivant : '05031970' pour '5 mars 1970'.");*/ //elem.form.error.className='vis'; setTimeout("focusElement('" + elem.form.name + "', '" + elem.name + "')", 0); return false; } else { return true; } } // Vérifie si un champ contient 8 caractères function isLen8(elem) { var str = elem.value; var re = /\b.{8}\b/; if (!str.match(re)) { elem.form.error.className='vis'; setTimeout("focusElement('" + elem.form.name + "', '" + elem.name + "')", 0); return false; } else { return true; } } // Positionne le curseur dans un champ donné function focusElement(formName, elemName) { var elem = document.forms[formName].elements[elemName]; elem.focus(); //elem.select(); }
|
|
mardi 4 septembre 2007 à 15:10:32 |
Re : Problème de teste de formulaire

bultez
|
>> tu comprends pas pourquoi tu utilises ie7 ? ;o) excellent zobibol ! 
>>, sinon cette M.... microsofesque je m'en passe largement ;o) parce ce que tu fais fonctionne avec d'autres navigateurs ?  plutôt curieux... tu me dis lequel ?
la base :
< form action... onsubmit="return(ctr());"... /> ... champs de saisie... <input type="submit'"... /> </form>
<script.... function ctr() { contrôle de ce qu'on veut si erreur ==> return false; sinon : return true; }...
Cordialement Bul [mon Site] [M'écrire] En général, c'est absurde de généraliser.
|
|
mardi 4 septembre 2007 à 15:20:56 |
Re : Problème de teste de formulaire

kaygee
|
Oui tout a fait, et je fais quoi a ton avis
de plus je n'ai pas dis que ce code fonctionnais sur ie7, j'ai dis que ie7 c'était de la merde de microsoft et que bien souvent un code fonctionne correctement sur d'autre browser
|
|
mardi 4 septembre 2007 à 15:33:38 |
Re : Problème de teste de formulaire

bultez
|
bien souvent... peut-être. mais le tien ? >> et je fais quoi a ton avis pas comme je te montre ou comme zobibol t'a expliqué en tout cas. mais bon... pour moi : plonk, comme on dirait ailleurs... Cordialement Bul [mon Site] [M'écrire] En général, c'est absurde de généraliser.
|
|
mardi 4 septembre 2007 à 15:39:17 |
Re : Problème de teste de formulaire

Zobibol
|
Moi d'après ce que je ne comprends plus ( m'a cassé la tête ), je ferais : function validateForm(form,title) { // Test l'email en premier if(document.getElementById("eMail").value!=document.getElementById("eMail_conf").value) { alert("les zones email et confirmation d'email doivent être identiques"); document.getElementById("eMail_conf").value = ''; return false; } // puis les autres test.... var err=0; var msg='<fieldset id="error" class="vis"><legend>' + title + '</legend><ul>'; return_validateInput = validateInput(document.getElementsByTagName("input")); err+=return_validateInput[0]; msg+=return_validateInput[1]; return_validateInput = validateInput(document.getElementsByTagName("select")); err+=return_validateInput[0]; msg+=return_validateInput[1]; validateInput(document.getElementsByTagName("textarea")); err+=return_validateInput[0]; msg+=return_validateInput[1]; if (err==0) { return(true); } else { msg+="</ul></fieldset>"; document.getElementById("error").innerHTML=msg; return false; }
et je supprimerais le verif_conf_mail() du submit : onsubmit="validateForm(this,'Error(s)');" Non ? [o-_-o]
|
|
mardi 4 septembre 2007 à 15:40:40 |
Re : Problème de teste de formulaire

kaygee
|
Mon problème est que mon code fonctionne lors du dernier passage mais pas lors du premier, il retourne bien mon false pour l'email donc pas de souci, mais il refuse de tester si mon champs est vide ou non, hors si a l'encodage de mon compte une erreur se produit, il revient sur le form et la le test fonctionne
|
|
Cette discussion est classée dans : problème, page, formulaire, email, teste
Répondre à ce message
Sujets en rapport avec ce message
problème submit un formulaire en java... [ par Jin ]
Bonjour,l'action sur le bouton "envoyer" doit appeler la fonction toto() qui elle doit poster ce formulaire (et les données * b * l ...) à la page asp
Problème d'affichage d'un formulaire [ par alain21 ]
Bonjour.Je possède un formulaire à insérer dans une page HTML pour un petit sondage. En utilisant Internet Explorer pour l'ouverture de la page, le r
Problème d'actualisation champ formulaire [ par telcha73 ]
bonjour, J'ai créer un petit formulaire d'inscription newsletter. <input name="email" type="text" class="imagegauche" value="Entrez votre email i
problème sur ma page d'accueil. [ par mlies ]
Hello, bon ben je n'ai pas de réponse sur mon précédent message... du coup je re-poste... Si quelqu'un peu me donner un coup de main la dessus, ça se
formulaire créant lien vers fichiers existants coté client [ par paralaile ]
Bonjour, le programme d'un congrès s'affiche dans une page web vue par tout l'auditoire grâce à un vidéo projecteur. Sur cette page s'affiche donc les
Problème lien vers une iframe extérieure [ par estebuan ]
Bonjour à tous, Je suis en train de refaire le site web de mon entreprise, (le site datait d'il y a 10 ans). J'ai donc tout refait en utilisant le
Problème avec formulaire [ par cdoliv ]
Bonjour, Je "séche" depuis un moment et personne pour m'aider ? J'explique : J'ai deux champs d'un formulaire (je suis en php/html) : un champ "text
verification formulaires [ par djbabou ]
Bonjour a tous. depuis ce matin, j'ai remarqué un petit souci de programmation dans mes formulaires. Ils sont faits en php, par contre, j'utilise un
Problème de RegEx [ par neigedhiver ]
Salut, J'ai une fonction pour tester la validité de la syntaxe d'une adresse email qui vient pour l'essentiel d'[url=http://www.regular-expressions.i
Problème de script envoi/validation formulaire . [ par othx3 ]
Bonjour à tous, je viens à vous car je pense que vous pourrez m'aider, j'ai comme le dit le titre du topic un Problème de script d'envoi ! Je ne comp
Livres en rapport
|
Derniers Blogs
POUR RAPPEL ! LES SPéCIFICATIONS DES PROTOCOLES OFFICE ET SHAREPOINT SONT DISPONIBLES SUR MSDNPOUR RAPPEL ! LES SPéCIFICATIONS DES PROTOCOLES OFFICE ET SHAREPOINT SONT DISPONIBLES SUR MSDN par neodante
Quelle est le point commun entre : Microsoft il y a 10 ans et Apple aujourd'hui ? Réponse: avoir une politique de protocoles propriétaires et fermés :) Car pour rappel (si si je vous assure c'est important de le rappeler), la majorité des spécifications e...
Cliquez pour lire la suite de l'article par neodante JOYEUX ANNIVERSAIRE NIXJOYEUX ANNIVERSAIRE NIX par ebartsoft
Souhaitons un bon et joyeux anniversaire à notre hôte à tous, Nix.
Je ne le répéterais jamais assez mais sans lui rien ne serait possible. Il défit en permanence les lois de la gravité et comme il le dit si bien, si tu lui fais confiance ça devra...
Cliquez pour lire la suite de l'article par ebartsoft IMAGINE CUP 2012, MAKE A SIGN EN FINALEIMAGINE CUP 2012, MAKE A SIGN EN FINALE par junarnoalg
Voilà qui est fait, la nouvelle est officielle ! L'équipe belge "Make a Sign" va au pays des kangourous défendre son projet dans la catégorie Software Design. http://www.imaginecup.com/CompetitionsContent/Competition/WorldwideFinalists.aspx V...
Cliquez pour lire la suite de l'article par junarnoalg KINECT 1.5 IS OUT !KINECT 1.5 IS OUT ! par Vko
La version 1.5 du Kinect For Microsoft vient tout juste de sortir ! Plein de nouveautés: Tracking de squelette en Near Mode Détection en position assise Détection faciale avec un SDK dédié Documentation et des guideline (enfin) Un out...
Cliquez pour lire la suite de l'article par Vko LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) par richardc
Mise à jour des Web API du 14 Mai
Réservez dès maintenant votre journée du 20 juin pour le Windows Azure Dev Camp 2012 à Paris
Mise à jour de Team Foundation Service
MechCommander 2 sur Windows 8
Entity Framework 5 Release Candidate e...
Cliquez pour lire la suite de l'article par richardc
Logiciels
sDEVIS-FACTURES vlPRO (8.1.0.3)SDEVIS-FACTURES VLPRO (8.1.0.3)sDEVIS-FACTURES vlPRO a été mis au point pour les particuliers, créateurs, entrepreneurs, artisa... Cliquez pour télécharger sDEVIS-FACTURES vlPRO 974 Application Server (12.2.4.6)974 APPLICATION SERVER (12.2.4.6)Développez de puissantes applications dans un environnement de 'cloud computing', clusterisé, séc... Cliquez pour télécharger 974 Application Server vPicture (1.4.2.1)VPICTURE (1.4.2.1)Avec vPicture, hébergez vos images facilement et rapidement.
vPicture est un utilitaire simple, ... Cliquez pour télécharger vPicture Easy-Planning (2.2.1.6)EASY-PLANNING (2.2.1.6)Easy-Planning permet de créer des plannings sous la représentation de diagrammes et est adapté au... Cliquez pour télécharger Easy-Planning COM-BACKUP (2.0)COM-BACKUP (2.0)
COM-BACKUP est un logiciel de sauvegarde qui permet de planifier les sauvegardes de vos dossiers ...
Cliquez pour télécharger COM-BACKUP
|