Validation d'un formulaire et Javascript

locotest Messages postés 2 Date d'inscription samedi 22 septembre 2007 Statut Membre Dernière intervention 29 mars 2008 - 29 mars 2008 à 00:02
malalam Messages postés 10839 Date d'inscription lundi 24 février 2003 Statut Membre Dernière intervention 2 mars 2010 - 29 mars 2008 à 13:19
J'ai un bête formulaire <FORM name='inscription' method=POST action='valide.php'> contenant 1 champ "Nom", 1 champ "Prénom", 2 champs de mots de passe ( l'un servant de "confirmation" à l'autre) et un bouton "Submit".

Sur le "OnClick", j'ai une une fonction Javascript qui teste l'égalité entre les 2 mots de passe. S'ils sont différents ou si l'un des deux est vide, j'affiche une alerte et j'aimerais que 'valide.php' ne soit pas exécuté. Or, actuellement, il affiche éventuellement le msg d'erreur et exécute 'valide.php'. Comment faire pour l'empecher ?

Merci d'avance

5 réponses

neigedhiver Messages postés 2480 Date d'inscription jeudi 30 novembre 2006 Statut Membre Dernière intervention 14 janvier 2011 19
29 mars 2008 à 00:35
Salut,

2 choses :
1/ Ton code HTML est incorrect. Les balises et les attributs doivent être écrits en minuscules, et les valeurs doivent être entourées de guillemets doubles : " (=> w3.org)

2/ L'évènement onclick n'a pas, à ma connaissance, d'effet sur la soumission d'un formulaire. Par contre, il me semble que l'évènement onsubmit sert justement à savoir si le formulaire doit être soumis ou non, suivant la valeur qu'il produit (true ou false) : http://www.w3schools.com/xhtml/xhtml_eventattributes.asp
Plus de précisions sur l'utilisation, sur javascriptfr.

<hr size="2" width="100%" />Neige

N'hésitez pas à lire la doc de PHP avant de poser des questions triviales...
0
locotest Messages postés 2 Date d'inscription samedi 22 septembre 2007 Statut Membre Dernière intervention 29 mars 2008
29 mars 2008 à 01:09
Désolé pour ces erreurs de syntaxe qu'il n'y avait pas dans mon code ;-)

Et ensuite un grand merci pour ton aide, Neige. J'ai codé un "OnSubmit" sur mon formulaire avec "return false" pour les cas d'erreur et ça marche finement. 
0
malalam Messages postés 10839 Date d'inscription lundi 24 février 2003 Statut Membre Dernière intervention 2 mars 2010 25
29 mars 2008 à 09:51
Hello,

puisqu'on est sur la conformité, l'attriubut name dans une balise form n'est pas conforme non plus.
0
coucou747 Messages postés 12303 Date d'inscription mardi 10 février 2004 Statut Membre Dernière intervention 30 juillet 2012 44
29 mars 2008 à 11:54
salut

j'ajoute un exemple a ce que disait neigedhivert :

<form ... onsubmit="return false;">

tu peux faire un truc genre :
function validation(){
 ....
 if (c'est bon) return true; else return false;
}

et ton html :

<form ... onsubmit="return validation();">

/**
* @author coucou747 <coucou747@hotmail.com>
* @see irc://cominweb.uni-irc.net/#programmation
*/
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
malalam Messages postés 10839 Date d'inscription lundi 24 février 2003 Statut Membre Dernière intervention 2 mars 2010 25
29 mars 2008 à 13:19
Et puisqu'on y est, je vais militer pour une séparation des évènements et le html. Des librairies comme prototype ou Jquery facilte ça, mais ça peut être fait sans : un html sans évènement, et le javascript qui gère tout sur le load du DOM. Mais l'exemple est bon.
0
Rejoignez-nous