Fonction js pour valider un formulaire

Résolu
Judes-Emile Bornes IV Messages postés 123 Date d'inscription   Statut Membre Dernière intervention   -  
lucasc Messages postés 97 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour, j'ai un formulaire géré par un fichier php qui me génère des mails parfaits, seulement, je n'arrive pas à faire fonctionner le javascript d'alerte pour les champs non remplis.
Merci de votre aide, voici mon code, le JS est en bas mais ne focntionne pas, je précise JS est activé dans mon navigateur.:
<form action="contact.php" method="post" id="contactform" target="_self">
    <!-- Les Champs à remplir par l'internaute -->
    <label for="nom" class="arial11noirgras"> Nom&nbsp;:<br />
    <input name="nom" type="text" class="arial11noir" id="nom" size="35" maxlength="255" />
    </label><br />
    <label for="prenom" class="arial11noirgras"> Prénom&nbsp;:<br />
    <input name="prenom" type="text" class="arial11noir" id="prenom" size="35" maxlength="255" />
    </label><br />
    <label for="email" class="arial11noirgras">Email&nbsp;:<br />
    <input type="text" class="arial11noir" name="email" id="email" size="35" maxlength="255" />
    </label><br />
    <label for="telephone" class="arial11noirgras">N° de Tél.&nbsp;(optionnel)&nbsp;:<br />
    <input type="text" class="arial11noir" name="telephone" id="telephone" size="35" maxlength="255" />
    </label><br />
	<label for="objet" class="arial11noirgras">Objet de votre message :<br />
    <select name="objet" size="1" class="arial11noir" dir="ltr">
    <option value="1" selected>Choisissez votre sujet ...</option>
	<option value="2">Demande d'informations</option>
	<option value="3">Signaler un problème sur le site</option>
    </select>
    </label><br />
    <label for="message" class="arial11noirgras">Message&nbsp;:<br />
	<textarea name="message" cols="75" rows="8" class="arial11noir" id="message" title="message" dir="ltr">
    </textarea>
  	</label>
    <br />
    <script language="javascript" type="application/javascript">
	//vérifie que les champs requis sont bien remplis
	function valider() {
	var inputnom = document.form.nom.value.length;
	var inputprenom = document.form.prenom.value.length;
	var inputemail = document.form.email.value.length;
	var inputmessage = document.form.message.value.length;
	if (inputnom==0 || inputprenom==0 || inputemail==0 || inputmessage==0) 
	{
		function Message() {
	alert("Veuillez remplir tous les champs requis!")
			}
		}
	}
	</script>
	<input name="Envoyer" type="submit" class="arial11noirgras" value="envoyer l'email" />
    <input name="Clear" type="reset" class="arial11noirgras" value="effacer" />
    <br /><br />
</form>
A voir également:

8 réponses

Judes-Emile Bornes IV Messages postés 123 Date d'inscription   Statut Membre Dernière intervention   12
 
Parfait!
j'ai créé le fichier js et l'appel depuis la page html fonctionne parfaitement.
Le problème dans mon script c'était que (enfin je pense) je n'avais pas déclaré mon formulaire par une variable.
enfin ton aide a été précieuse, merci! bravo Lucas
1
lucasc Messages postés 97 Date d'inscription   Statut Membre Dernière intervention   14
 
oui c'est ca le formulaire n'avais pas de nom !!

de rien pour le coup de pouce. c'était avec plaisir.

Bonne continuation !! lucas
1
lucasc Messages postés 97 Date d'inscription   Statut Membre Dernière intervention   14
 
essay deja en mettant dans ta balise form onsubmit="return valider()"


:) Lucas
0
Judes-Emile Bornes IV Messages postés 123 Date d'inscription   Statut Membre Dernière intervention   12
 
merci!
sur le input type="submit" j'imagine? :)
0

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

Posez votre question
Judes-Emile Bornes IV Messages postés 123 Date d'inscription   Statut Membre Dernière intervention   12
 
non j'ai rien dit tu m'a dis sur la balise form
0
lucasc Messages postés 97 Date d'inscription   Statut Membre Dernière intervention   14
 
exact :)
0
Judes-Emile Bornes IV Messages postés 123 Date d'inscription   Statut Membre Dernière intervention   12
 
zut ça marche pas :(
j'ai essayé aussi
<input name="Envoyer" type="submit" class="arial11noirgras" value="envoyer l'email" onclick="javascript:return valider()"/>
0
lucasc Messages postés 97 Date d'inscription   Statut Membre Dernière intervention   14
 
Voila ce que je ferai :

<form action="contact.php" method="POST" name="form1" onsubmit="return valider()">
//ici tous tes input text


Ensuite pour la fonction valider() :

function valider(){

  var form = document.form1;

 if (form.nom.value == ""){
   alert("Veuillez rentrer votre nom");
   form.nom.focus();  // le curseur se place sur le champ nom
   return false;

 }

 if (form.prenom.value == ""){
   alert("Veuillez rentrer votre prenom");
   form.prenom.focus();  // le curseur se place sur le champ prenom
   return false;
 }
 
 //répeter pour chaque champ
}



je te conseil de créer un fichier js et de le joindre dans l'entête du php :

<script type="text/javascript" src="nomdufichier.js" charset="iso-8859-1"></script>



PS : si tu veut un message rassemblant tous les champs du genre "Veuillez remplir les champs nom, prenom" si nom et prenom sont vide je t'expliquerai comment faire
0