Appel des fonctions javascript

Fermé
lapprenti - 4 janv. 2010 à 14:42
 lapprenti - 4 janv. 2010 à 22:59
Bonjour,
voila je suis bloqué au niveau d'appel des fonctions java script .Je ne sais pas si c'est mon script qui est erroné ou c'est un problème d'appel de fonctions. Avant les 2 fonctions marchaient à savoir : champ_obligatoire() et verifier_email();pour tester_civilite() je me dis que le script n'est pas bien!
voilà le script
merci d'avance!


// verifie si tous les champs sont bien remplis sinon on a un message d'erreur
function champ_obligatoire()
{
// verifier si le nom a été saisi
var nom;
nom=document.formulaire.nom.value;

if(document.formulaire.nom.value=="")
{
alert("veillez remplir votre nom s'il vous plaît.");
document.formulaire.focus();
return false;
}

// verifier si le prenom a été saisi
var prenom;
prenom=document.formulaire.prenom.value;

if(document.formulaire.prenom.value=="")
{
alert("veillez remplir votre prenom s'il vous plaît.");
document.formulaire.focus();
return false;
}
}


function tester_civilite()

{
var bouton_radio = ["M","Mme","Mlle"]; // je liste mes boutons radios

/* on parcours les radios afin de voir si une d'elle est cochée
si oui on passe
sinon on affiche le message d'erreur
*/

for (i = 0; i<bouton_radio.length; i++)
{
var radio_choice = false;

for (counter = 0; counter < document.formulaire.bouton_radio[i].length; counter++)
{

if (document.formualire.bouton_radio[i][counter].checked)
{

radio_choice = true;

}

}

if (!radio_choice)
{

alert('Le champ '+ bouton_radio[j] +' doit être rempli');

return false;

}

}


function verifier_email()
{

/* Cette fonction verifie
- s'il existe une arobase et un point; des lettres quelconques(en minuscule ou majuscule), n'importe quel chiffre, et les caractères "-" ou "_"
- verifie les caractères entre l'arobase et le point
- aprés le point, elle verifie l'existance de 2 ou 3 caractères
*/
var email = document.formulaire.email.value;
var verif = /^[a-zA-Z0-9_-]+@[a-zA-Z0-9-]{2,}[.][a-zA-Z]{2,3}$/;
if (verif.exec(email) == null)
{
alert("Votre email est incorrecte");
return false;
}

else
{
return true;
}
}
</script>

</head>
<body>

<div align="center">
<h2>FORMULAIRE DE RESERVATION</h2>
<p> </p>
<p style="font-weight: bold">Merci de saisir vos coordonnees avant de valider en cliquant sur le bouton RESERVER</p>

<form name="formulaire" action="reservation.php" method="get" onSubmit="verifier_email()";>

Civilite(**)
<span style="text-align: left">
<span style="text-align: center">
<span style="text-align: left">
<span style="text-align: right">

<input type="radio" name="civilite" value="m" />M
<input type="radio" name="civilite" value="mme"/>Mme
<input type="radio" name="civilite" value="mlle"/>Mlle

</span>
</span>
</span>
</span>

<p>Nom(**) <input type="text" name="nom"/> </p>
<p>Prenom(**) <input type="text" name="prenom"/></p>
<p>Email(**) <input type="text" name="email"/></p>
<p>Adresse <input type="text" /></p>

<p><span style="text-align: right">Code Postal <input type="text" name="cod_postal"/></span>
<p>Ville <input type="text" /></p>
<p><span style="text-align: right">Pays <input type="text" name="pays"/> </span> </p>

<input type="submit" name="recherche" value="RESERVER" onClick="return champ_obligatoire(); tester_civilite();"/>
</form>
</script>

2 réponses

Alain_42 Messages postés 5361 Date d'inscription dimanche 3 février 2008 Statut Membre Dernière intervention 13 février 2017 894
4 janv. 2010 à 18:43
si tu appelles tes fct ainsi ça ne peut pas marcher il faut tout verifier dans une seule fct

<script type="text/javascript">
// verifie si tous les champs sont bien remplis sinon on a un message d'erreur
function champ_obligatoire(){
	//on fait des blocs de verifs de chaque champ si pas correct: mesage d'alert et return false donc on sort de la fonction de suite et le formulaire ne part pas

	// verifier si le nom a été saisi
	var nom;
	nom=document.formulaire.nom.value;

	if(document.formulaire.nom.value=="")
	{
	alert("veuillez remplir votre nom s'il vous plaît.");
	document.formulaire.focus();
	return false;
	}

	// verifier si le prenom a été saisi
	var prenom;
	prenom=document.formulaire.prenom.value;

	if(document.formulaire.prenom.value=="")
	{
	alert("veuillez remplir votre prenom s'il vous plaît.");
	document.formulaire.focus();
	return false;
	}
	
	//verif boutons radio
	var bouton_radio = ["M","Mme","Mlle"]; // je liste mes boutons radios
	/* on parcours les radios afin de voir si une d'elle est cochée
	si oui on passe
	sinon on affiche le message d'erreur
	*/

	for (i = 0; i<bouton_radio.length; i++){
		var radio_choice = false;
		for (counter = 0; counter < document.formulaire.bouton_radio[i].length; counter++){

		if (document.formulaire.bouton_radio[i][counter].checked){ //tu avait une erreur à cete ligne formualire au lieu de formulaire
			//de plus je doute du fonctionnement de l'adressage de cet objet ?
			radio_choice = true;
		}
	if (radio_choice == false){
		alert("veuillez cocher la civilité.");
		return false;
	}
	
		/* Cette fonction verifie
	- s'il existe une arobase et un point; des lettres quelconques(en minuscule ou majuscule), n'importe quel chiffre, et les caractères "-" ou "_"
	- verifie les caractères entre l'arobase et le point
	- aprés le point, elle verifie l'existance de 2 ou 3 caractères
	*/
	var email = document.formulaire.email.value;
	var verif = /^[a-zA-Z0-9_-]+@[a-zA-Z0-9-]{2,}[.][a-zA-Z]{2,3}$/;
	if (verif.exec(email) == null)
	{
	alert("Votre email est incorrecte");
	return false;
	}
	
	// si aucune erreur rencontrée on retourne true et le formulaire partira
	return true;
}



</script>

</head>
<body>

<div align="center">
<h2>FORMULAIRE DE RESERVATION</h2>
<p> </p>
<p style="font-weight: bold">Merci de saisir vos coordonnees avant de valider en cliquant sur le bouton RESERVER</p>

<form name="formulaire" action="reservation.php" method="get" onSubmit="return champ_obligatoire();";>

Civilite(**)
<span style="text-align: left">
<span style="text-align: center">
<span style="text-align: left">
<span style="text-align: right">

<input type="radio" name="civilite" value="m" />M
<input type="radio" name="civilite" value="mme"/>Mme
<input type="radio" name="civilite" value="mlle"/>Mlle

</span>
</span>
</span>
</span>

<p>Nom(**) <input type="text" name="nom"/> </p>
<p>Prenom(**) <input type="text" name="prenom"/></p>
<p>Email(**) <input type="text" name="email"/></p>
<p>Adresse <input type="text" /></p>

<p><span style="text-align: right">Code Postal <input type="text" name="cod_postal"/></span>
<p>Ville <input type="text" /></p>
<p><span style="text-align: right">Pays <input type="text" name="pays"/> </span> </p>

<input type="submit" name="recherche" value="RESERVER"  />
</form>
</script>
0
merci alain_42 j'ai fini par trouver la solution, j'ai écris toutes les fonctions dans un format .JS et j'ai appelé la fonctions!
merci bien!
0