Refuser l'envoi d'un formulaire s'il n'est pas rempli

2 participants

Voir le sujet précédent Voir le sujet suivant Aller en bas

Résolu Refuser l'envoi d'un formulaire s'il n'est pas rempli

Message par Zeste Lun 2 Avr 2012 - 19:58

Bonsoir,

Je voudrais que dans mon le code suivant, on ne puisse pas l'envoyer à vide. C'est à dire que l'on est obligé de mettre un message pour qu'il soit envoyé. Si on veut l'envoyer vide, un message s'affiche "Merci de remplir les champs'.

Code:
<title>Concours/Recrutements</title>
<meta http-equiv="content-type" content="text/html; charset=UTF-8" />
<body bgcolor="#E6E6E6"></center>
<div style="text-align: center;"><center>
<font size="3"><span style="font-family: Arial;">C'est sur cette page que tous les concours auront lieu. Il peut y avoir un recrutement de modérateurs/rédacteurs/correcteurs ou animateurs. Pour cela, un message explicatif sera énoncé ici.</span></font>

<br><script type="text/javascript" language="javascript">
function CompleteMessage()
{
document.getElementById('message').value + '\n';
}
</script>
<form enctype="multipart/form-data" name="post" method="post" action="/post"  onsubmit="CompleteMessage()">
<br />
<textarea name="message" id="message" style="display:inline" rows="10" cols="80" value="Proposez votre candidature..." onFocus="if(this.value=='Proposez votre candidature...')this.value=''" >Proposez votre candidature...</textarea><br />
<br><input type="submit" value="Poster la candidature" name="post" /><br />
<input type="hidden" value="Concours Animateur" name="subject" />
<input type="hidden" value="newtopic" name="mode" />
<input type="hidden" value="43" name="f" />
</form></br>

</pre>
 </form>
 </body>
 </html>

Merci. ^^


Dernière édition par Daylaton le Jeu 5 Avr 2012 - 21:09, édité 1 fois
Zeste

Zeste
Membre habitué

Féminin
Messages : 1366
Inscrit(e) le : 28/11/2010

Zeste a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Refuser l'envoi d'un formulaire s'il n'est pas rempli

Message par Zeste Mer 4 Avr 2012 - 17:45

up
Zeste

Zeste
Membre habitué

Féminin
Messages : 1366
Inscrit(e) le : 28/11/2010

Zeste a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Refuser l'envoi d'un formulaire s'il n'est pas rempli

Message par Zeste Jeu 5 Avr 2012 - 18:43

UP ::fete::
Zeste

Zeste
Membre habitué

Féminin
Messages : 1366
Inscrit(e) le : 28/11/2010

Zeste a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Refuser l'envoi d'un formulaire s'il n'est pas rempli

Message par Ea Jeu 5 Avr 2012 - 18:52

Bonjour,


Changez votre fonction qui ne fait rien :

Code:
function CompleteMessage()
{
document.getElementById('message').value + '\n';
}
En :

Code:
function CompleteMessage()
{
 var message= document.getElementById('message').value;
 if(/^\s*$/.test(message))
  return false;
}
En metant le test sous cette forme, ça refusera également un message constitué jute d'espace.

Sinon pour bien faire, il vaut mieux donner à une page une structure de page ( <head>, <html>, ... ).

Cordialement.
Ea

Ea
Aidactif
Aidactif

Messages : 23583
Inscrit(e) le : 04/04/2008

Ea a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Refuser l'envoi d'un formulaire s'il n'est pas rempli

Message par Zeste Jeu 5 Avr 2012 - 19:49

J'ai remplacé par ce que vous m'avez dit, et cela ne change rien. silent

Code:

<br><script type="text/javascript" language="javascript">
function CompleteMessage()
{
 var message= document.getElementById('message').value;
 if(/^\s*$/.test(message))
  return false;
}
</script>
<form enctype="multipart/form-data" name="post" method="post" action="/post"  onsubmit="CompleteMessage()">
<br />
<textarea name="message" id="message" style="display:inline" rows="10" cols="80" value="Proposez votre candidature..." onFocus="if(this.value=='Proposez votre candidature...')this.value=''" >Proposez votre candidature...</textarea><br />
<br><input type="submit" value="Poster la candidature" name="post" /><br />
<input type="hidden" value="Concours Animateur" name="subject" />
<input type="hidden" value="newtopic" name="mode" />
<input type="hidden" value="43" name="f" />
</form></br>

</pre>
 </form>
 </body>
 </html>
Zeste

Zeste
Membre habitué

Féminin
Messages : 1366
Inscrit(e) le : 28/11/2010

Zeste a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Refuser l'envoi d'un formulaire s'il n'est pas rempli

Message par Ea Jeu 5 Avr 2012 - 20:05

awip, il faudrait surement remplacer :

Code:
onsubmit="CompleteMessage()"
par :

Code:
onsubmit="return CompleteMessage()"
sinon le false qu'on renvoie dans la fonction ne servait à rien ^^

Cordialement.
Ea

Ea
Aidactif
Aidactif

Messages : 23583
Inscrit(e) le : 04/04/2008

Ea a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Refuser l'envoi d'un formulaire s'il n'est pas rempli

Message par Zeste Jeu 5 Avr 2012 - 20:57

Toujours pareil. x)

Après modifications :

Code:
<br><script type="text/javascript" language="javascript">
function CompleteMessage()
{
 var message= document.getElementById('Veuillez mettre votre candidature avant de poster!').value;
 if(/^\s*$/.test(message))
  return false;
}
</script>
<form enctype="multipart/form-data" name="post" method="post" action="/post"  onsubmit="return CompleteMessage()"
<br />
<textarea name="message" id="message" style="display:inline" rows="10" cols="80" value="Proposez votre candidature..." onFocus="if(this.value=='Proposez votre candidature...')this.value=''" >Proposez votre candidature...</textarea><br />
<br><input type="submit" value="Poster la candidature" name="post" /><br />
<input type="hidden" value="Concours Animateur" name="subject" />
<input type="hidden" value="newtopic" name="mode" />
<input type="hidden" value="43" name="f" />
</form></br>

</pre>
 </form>
 </body>
 </html>
Zeste

Zeste
Membre habitué

Féminin
Messages : 1366
Inscrit(e) le : 28/11/2010

Zeste a été remercié(e) par l'auteur de ce sujet.
  • 0

Résolu Re: Refuser l'envoi d'un formulaire s'il n'est pas rempli

Message par Ea Jeu 5 Avr 2012 - 21:02

"getElementById" ça veut dire " accéder à un élément par son id "

L'élément avec le message est de ce genre :

Code:
<textarea name="message" id="Veuillez mettre votre candidature avant de poster!" style="display:inline" rows="10" cols="80" value="Proposez votre candidature..." onFocus="if(this.value=='Proposez votre candidature...')this.value=''" >Proposez votre candidature...</textarea>
?

Si vous voulez une alerte, je n'en avais pas mis il faut plutôt mettre :

Code:
function CompleteMessage()
{
 var message= document.getElementById('message').value;
 if(!/^\s*$/.test(message)) return;

 alert("Merci de remplir ce champ");
 return false;
}
Cordialement.
Ea

Ea
Aidactif
Aidactif

Messages : 23583
Inscrit(e) le : 04/04/2008

Ea a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Refuser l'envoi d'un formulaire s'il n'est pas rempli

Message par Zeste Jeu 5 Avr 2012 - 21:09

Oui voilà.

Je m'étais mal exprimé aussi, désolé.

Merci merci. Very Happy
Zeste

Zeste
Membre habitué

Féminin
Messages : 1366
Inscrit(e) le : 28/11/2010

Zeste a été remercié(e) par l'auteur de ce sujet.

Voir le sujet précédent Voir le sujet suivant Revenir en haut

- Sujets similaires

Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum