Controle de champs+mailto

Fermé
louis266 - 8 juin 2004 à 11:33
 louis266 - 10 juin 2004 à 16:25
Bonjour,
Ca progresse, mais sur ce script, qui controle deux champs et envoie le tout par mailto, les controles sont ok, mais quand je clique deux fois sur le message m'indiquant qu'un champ n'est pas rempli, j'envoie quand mème le mail ce qui n'est pas normal? n'est ce pas!!!!!

<html>
<head>
<title> zrzerzer </title>
<meta name="GENERATOR" content="Namo WebEditor v5.0">
<meta name="description" content="Document vierge sans aucun style">
</head>
<body>
<SCRIPT LANGUAGE="JavaScript">
function verifForm(formulaire)
{
if(formulaire.nom1.value == "")
alert('Vous avez oublié de saisir votre nom !');
else formulaire.submit();
if(formulaire.nom2.value == "")
alert('Vous avez oublié de saisir votre nom !');
else
formulaire.submit();
}
</script>
<form method=post enctype="text/plain" action=mailto:"jeantout1@yahoo.com >
<p><input type="text" name="nom1" size="50"></p>
<p><input type="text" name="nom2"></p>
<p> <input type="submit" name="envoi" onclick="verifForm(this.form)"></p>
<p> </p>
</form>
</body>
</html>
A voir également:

7 réponses

flokocha Messages postés 1510 Date d'inscription lundi 8 mars 2004 Statut Membre Dernière intervention 10 octobre 2015 280
8 juin 2004 à 11:54
Je te conseille plutôt de procéder comme cela:

<html>
<head>
<title> zrzerzer </title>
<meta name="GENERATOR" content="Namo WebEditor v5.0">
<meta name="description" content="Document vierge sans aucun style">
</head>
<body>
<SCRIPT LANGUAGE="JavaScript">
function verifForm(formulaire)
{
if(formulaire.nom1.value == "" || formulaire.nom2.value == "")
alert('Vous avez oublié de saisir votre nom !');
else
return true;
}
</script>
<form method=post enctype="text/plain" action=mailto:"jeantout1@yahoo.com onSubmit="verifForm(this.form)">
<p><input type="text" name="nom1" size="50"></p>
<p><input type="text" name="nom2"></p>
<p> <input type="submit" name="envoi"></p>
<p> </p>
</form>
</body>
</html>


.::: "A trop vouloir feindre de faire fi, on finit 
par faire fi de vouloir feindre." 
:::.
0
flokocha Messages postés 1510 Date d'inscription lundi 8 mars 2004 Statut Membre Dernière intervention 10 octobre 2015 280
9 juin 2004 à 11:09
Je viens de m'apercevoir d'un oubli dans le code que je t'ai donné, il faut en réalité écrire :
<form method=post enctype="text/plain" action=mailto:"jeantout1@yahoo.com onSubmit="return verifForm(this.form)">


.::: "A trop vouloir feindre de faire fi, on finit 
par faire fi de vouloir feindre." 
:::.
0
Salut,
Je m'etais rendu compte qu'il y avait un pb sur ton script, mais je n'avais pas osé te le dire.

Merci de ta correction, je vais à nouveau tester.
0
flokocha Messages postés 1510 Date d'inscription lundi 8 mars 2004 Statut Membre Dernière intervention 10 octobre 2015 280
9 juin 2004 à 17:58
En fait j'ai l'impression qu'il y en a aussi un autre, c'est que je pensais que le false était implicite, mais apparamment il faut qd même le retourner.

Ça donnerait donc quelque chose comme :

html>
<head>
<title> zrzerzer </title>
<meta name="GENERATOR" content="Namo WebEditor v5.0">
<meta name="description" content="Document vierge sans aucun style">
</head>
<body>
<SCRIPT LANGUAGE="JavaScript">
function verifForm(formulaire)
{
if(formulaire.nom1.value == "" || formulaire.nom2.value == "") {
alert('Vous avez oublié de saisir votre nom !');
return false;
}
else {
return true;
}
}
</script>
<form method=post enctype="text/plain" action=mailto:"jeantout1@yahoo.com onSubmit="return verifForm(this.form)">
<p><input type="text" name="nom1" size="50"></p>
<p><input type="text" name="nom2"></p>
<p> <input type="submit" name="envoi"></p>
<p> </p>
</form>
</body>
</html>


.::: "A trop vouloir feindre de faire fi, on finit
par faire fi de vouloir feindre."
:::.
0

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

Posez votre question
Merci pour ta dernière correction, mais il y a une nouvelle erreur de script sur cette ligne

if(formulaire.nom1.value == "" || formulaire.nom2.value == "")
Err: "Nom1 à la valeur nulle ou n'est pas un objet
et il n'y a pas de controle. c'est peut etre du à l'erreur.


Merci A+
0
flokocha Messages postés 1510 Date d'inscription lundi 8 mars 2004 Statut Membre Dernière intervention 10 octobre 2015 280
10 juin 2004 à 09:32
C'est parce qu'il manque l'espace entre if et la parenthèse non ?

if (formulaire.nom1.value == "" || formulaire.nom2.value == "")

Petite faute de frappe...

.::: "A trop vouloir feindre de faire fi, on finit 
par faire fi de vouloir feindre." 
:::.
0
Salut,
Non, ce n'est pas la parenthèse, j'ai essayé qq modif et je n'ai pas trouvé. A+
0
flokocha Messages postés 1510 Date d'inscription lundi 8 mars 2004 Statut Membre Dernière intervention 10 octobre 2015 280
10 juin 2004 à 10:26
Ben écoute, chez moi j'ai un fait ce script :

function submitForm() {
if (document.RTEDemo.nomfichier.value == "page.htm")
{
alert("Veuillez donner un nom à cette page.");
return false;
}
else
{
updateRTEs();
return true;
}
}


<form name="RTEDemo" action="serv.php" method="post" onSubmit="return submitForm();">


Et ça fonctionne très bien. Je ne comprends pas pourquoi ça ne marche pas chez toi !

.::: "A trop vouloir feindre de faire fi, on finit 
par faire fi de vouloir feindre." 
:::.
0
J'abandonne, je vais faire des controles séparés, ca sa marche. je me demande tout de mème si c'est pas au niveau du pipe qu'il y a pb.

merci quand mème. A+
0