[Javascript]verifier le contenu d'un input

Fermé
bezourox Messages postés 729 Date d'inscription vendredi 30 mars 2007 Statut Membre Dernière intervention 19 janvier 2013 - 12 juil. 2007 à 16:45
jipicy Messages postés 40842 Date d'inscription jeudi 28 août 2003 Statut Modérateur Dernière intervention 10 août 2020 - 14 juil. 2007 à 10:25
Bonjour à toutes et à tous .
Voila j'ai un soucis avec mon code javascript qui ne marche pas .
J'ai une page qui contient des zones de texte à remplir et des boutons radio et je souhaite verifier que tous les inputs sont bien remplis .

voila vite fait une petite partie du code de la page :
<form action="genere_fichiers.php" method="post" name="param" onsubmit="return confirmation(this)">
<input type="text" name="reponse1" size=60></td><td><input type="radio" name="r1" value="1">
<input type="text" name="reponse2" size=60></td><td><input type="radio" name="r1" value="2">
...
...


et voici mon code js placé dans le head :

<script type='text/javascript'>
function confirmation(frm)
{
			var question1 = document.param.question1.value;
			var question2 = document.param.question2.value;
			var reponse1 = document.param.reponse1.value;
			var r1 = document.param.r1.value;
			var r2 = document.param.r2.value;
			var reponse2 = document.param.reponse2.value;
			var reponse3 = document.param.reponse3.value;
			var r3 = document.param.r3.value;
			var mess = '';
			if ( question1 == '') mess += 'ERREUR : Renseignez correctement la question1\n';
			if ( question2 == '') mess += 'ERREUR : Renseignez correctement la question2\n';
			if ( reponse1 == '') mess += 'ERREUR : Renseignez correctement la question1\n';
			if ( reponse2 == '') mess += 'ERREUR : Renseignez correctement la question2\n';
			if ( reponse3 == '') mess += 'ERREUR : Renseignez correctement la question3\n';
			if ( r1 == '') mess += 'ERREUR : Renseignez correctement la réponse juste à la question 1\n';
			if ( r2 == '') mess += 'ERREUR : Renseignez correctement la réponse juste à la question 2\n';
			if ( r3 == '') mess += 'ERREUR : Renseignez correctement la réponse juste à la question 3\n';
			if (mess != '') 
			{
				alert (mess);
				return false;
			}	
			else
			{
				return true;	
			}
}
</script>


Voila donc pour le moment quand je ne remplis aucun champs et que je clique sur le submit, je suis rebalancé sur la page suivante sans messages d'erreurs ... :s
Si vous voyez un soucis ou qu'il manque quelque chose dites moi parce que la je vois pas et je suis pas une star en js en plus .

7 réponses

Tiller Messages postés 781 Date d'inscription mercredi 4 juillet 2007 Statut Membre Dernière intervention 14 septembre 2008 210
12 juil. 2007 à 20:27
<form action="genere_fichiers.php" method="post" name="param" onsubmit="return confirmation()">
<input type="text" name="reponse1" id="reponse1" size=60></td><td><input type="radio" name="r1" id="r1" value="1">
<input type="text" name="reponse2" id="reponse2" size=60></td><td><input type="radio" name="r1" id="r2" value="2">

<script type='text/javascript'>
function confirmation()
{
			var question1 = document.getElementById('question1').value;
			var question2 = document.getElementById('question2').value;
			var reponse1 = document.getElementById('reponse1').value;
			var r1 = document.getElementById('r1').value;
			var r2 = document.getElementById('r2').value;
			var reponse2 = document.getElementById('reponse2').value;
			var reponse3 = document.getElementById('reponse3').value;
			var r3 = document.getElementById('r3').value;
			var mess = '';
			if ( question1 == '') mess += 'ERREUR : Renseignez correctement la question1\n';
			if ( question2 == '') mess += 'ERREUR : Renseignez correctement la question2\n';
			if ( reponse1 == '') mess += 'ERREUR : Renseignez correctement la question1\n';
			if ( reponse2 == '') mess += 'ERREUR : Renseignez correctement la question2\n';
			if ( reponse3 == '') mess += 'ERREUR : Renseignez correctement la question3\n';
			if ( r1 == '') mess += 'ERREUR : Renseignez correctement la réponse juste à la question 1\n';
			if ( r2 == '') mess += 'ERREUR : Renseignez correctement la réponse juste à la question 2\n';
			if ( r3 == '') mess += 'ERREUR : Renseignez correctement la réponse juste à la question 3\n';
			if (mess != '') 
			{
				alert (mess);
				return false;
			}	
			else
			{
				return true;	
			}
}
</script>


Je te conseil d'utiliser id="" puis en javascript document.getElementById('')

C'est plus "stable"
3
ok ok merci .
je vais regarder ca dans la matinée .
a plus tard .
1
bezourox Messages postés 729 Date d'inscription vendredi 30 mars 2007 Statut Membre Dernière intervention 19 janvier 2013 143
13 juil. 2007 à 14:28
bon et bien ta solution ne marche pas non plus .
je commence a perdre patience avec ce javascript de m**** :)
0
Tiller Messages postés 781 Date d'inscription mercredi 4 juillet 2007 Statut Membre Dernière intervention 14 septembre 2008 210
13 juil. 2007 à 16:00
Ma solution marche parfaitement ;o

T'as du mal l'employé, fait voir ton code complet
0

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

Posez votre question
bezourox Messages postés 729 Date d'inscription vendredi 30 mars 2007 Statut Membre Dernière intervention 19 janvier 2013 143
13 juil. 2007 à 16:49
le voila :

<html>
	<head>
		<title>Generateur de formulaire</title>
		<meta name="author" content="Guillaume PRIOU">
		<meta name="copyright" content="Guillaume PRIOU , GRETA LOT">
		<meta name="generator" content="Notepad++">
		<meta name="date" content="2007-07-09">
		<meta http-equiv="Content-Type" content="text/HTML; charset=iso-8859-1">
		<link rel='stylesheet' type='text/css' href='../css/css.css'>

		<script type='text/javascript'>
		function confirmation(frm)
		{
			var mess = '';
			var question1 = document.getElementById(question1).value;
			if ( question1 == '') mess += 'ERREUR : Renseignez correctement la question1\n';
			var question2 = document.getElementById(question2).value;
			if ( question2 == '') mess += 'ERREUR : Renseignez correctement la question2\n';
			var reponse1 = document.getElementById('reponse1').value;
			if ( reponse1 == '') mess += 'ERREUR : Renseignez correctement la question1\n';
			var r1 = document.getElementById('r1').value;
			if ( r1 == '') mess += 'ERREUR : Renseignez correctement la réponse juste à la question 1\n';
			var reponse2 = document.getElementById('reponse2').value;
			if ( reponse2 == '') mess += 'ERREUR : Renseignez correctement la question2\n';
			var r2 = document.getElementById('r2').value;
			if ( r2 == '') mess += 'ERREUR : Renseignez correctement la réponse juste à la question 2\n';
			var reponse3 = document.getElementById('reponse3').value;
			if ( reponse3 == '') mess += 'ERREUR : Renseignez correctement la question3\n';
			var r3 = document.getElementById('r3').value;
			if ( r3 == '') mess += 'ERREUR : Renseignez correctement la réponse juste à la question 3\n';
			if (mess != '') 
			{
				alert (mess);
				return false;
			}	
			else
			{
				return true;	
			}
		}
		</script>
	</head>
	<body>
		<form action="genere_fichiers.php" method="post" name="param" onsubmit="return confirmation()">
		<center><table class="cadre_rouge">
			<tr>
				<td>Vous devez ici spécifier les questions de votre QCM, ainsi que les propositions de réponse et <b>sélectionner la bonne réponse pour chaque question</b>.<br />Votre qcm aura pour nom : qcm_blabla.<br /></td>
			</tr>
		</table><br /><br />
		<center><table border=0 class="cadre_sable_fonce">
			<tr>
				<td colspan=3>Question 1</td>
			</tr>
			<tr>
				<td>Votre question : </td>
				<td colspan=2><input type='text' name='question1' size=100 id='question1'><br /></td>
			</tr>
			<tr>
				<td>Reponse 1 : </td><td><input type='text' name='reponse1' size='60' id='reponse1'></td>
				<td><input type='radio' name='r1' value='1' id='r1'></td>
			</tr>
			<tr>
				<td>Reponse 2 : </td><td><input type='text' name='reponse2' size='60' id='reponse2'></td>
				<td><input type='radio' name='r1' value='2' id='r2'></td>
			</tr>
			<tr>
				<td>Reponse 3 : </td><td><input type='text' name='reponse3' value='Je ne sais pas' size='60' disabled></td>
				<td>Sélectionnez<br />la réponse<br />juste</td>
			</tr>
		</table></center><br />
		<center><table border=0 class="cadre_sable_fonce">
			<tr>
				<td colspan=3>Question 2</td>
			</tr>
			<tr>
				<td>Votre question : </td>
				<td colspan=2><input type='text' name='question2' size='100' id='question2'><br /></td>
			</tr>
			<tr>
				<td>Reponse 1 : </td><td><input type='text' name='reponse4' size='60' id='reponse4'></td>
				<td><input type='radio' name='r2' value='4' id='r4'></td></tr><tr><td>Reponse 2 : </td>
				<td><input type='text' name='reponse5' size='60' id='reponse5'></td>
				<td><input type='radio' name'r2' value='5' id='r5'></td>
			</tr>
			<tr>
				<td>Reponse 3 : </td>
				<td><input type='text' name='reponse6' value='Je ne sais pas' size='60' disabled></td>
				<td>Sélectionnez<br />la réponse<br />juste</td>
			</tr></table></center><br />
			<input type='hidden' name='nb_questions' value='2'>
			<input type='hidden' name='nb_reponses' value='3'>
			<input type='hidden' name='nom_qcm' value='qcm_blabla'>
			<center><table class="cadre_rouge">
				<tr>
					<td><input type='submit' name='result' value='Générer le QCM'></td>
				</tr>
			</table></center>
		</form>
	</body>
</html>
0
bezourox Messages postés 729 Date d'inscription vendredi 30 mars 2007 Statut Membre Dernière intervention 19 janvier 2013 143
13 juil. 2007 à 16:49
<html>
<head>
<title>Generateur de formulaire</title>
<meta name="author" content="Guillaume PRIOU">
<meta name="copyright" content="Guillaume PRIOU , GRETA LOT">
<meta name="generator" content="Notepad++">
<meta name="date" content="2007-07-09">
<meta http-equiv="Content-Type" content="text/HTML; charset=iso-8859-1">
<link rel='stylesheet' type='text/css' href='../css/css.css'>

<script type='text/javascript'>
function confirmation(frm)
{
var mess = '';
var question1 = document.getElementById(question1).value;
if ( question1 == '') mess += 'ERREUR : Renseignez correctement la question1\n';
var question2 = document.getElementById(question2).value;
if ( question2 == '') mess += 'ERREUR : Renseignez correctement la question2\n';
var reponse1 = document.getElementById('reponse1').value;
if ( reponse1 == '') mess += 'ERREUR : Renseignez correctement la question1\n';
var r1 = document.getElementById('r1').value;
if ( r1 == '') mess += 'ERREUR : Renseignez correctement la réponse juste à la question 1\n';
var reponse2 = document.getElementById('reponse2').value;
if ( reponse2 == '') mess += 'ERREUR : Renseignez correctement la question2\n';
var r2 = document.getElementById('r2').value;
if ( r2 == '') mess += 'ERREUR : Renseignez correctement la réponse juste à la question 2\n';
var reponse3 = document.getElementById('reponse3').value;
if ( reponse3 == '') mess += 'ERREUR : Renseignez correctement la question3\n';
var r3 = document.getElementById('r3').value;
if ( r3 == '') mess += 'ERREUR : Renseignez correctement la réponse juste à la question 3\n';
if (mess != '')
{
alert (mess);
return false;
}
else
{
return true;
}
}
</script>
</head>
<body>
<form action="genere_fichiers.php" method="post" name="param" onsubmit="return confirmation()">
<center><table class="cadre_rouge">
<tr>
<td>Vous devez ici spécifier les questions de votre QCM, ainsi que les propositions de réponse et <b>sélectionner la bonne réponse pour chaque question</b>.<br />Votre qcm aura pour nom : qcm_blabla.<br /></td>
</tr>
</table><br /><br />
<center><table border=0 class="cadre_sable_fonce">
<tr>
<td colspan=3>Question 1</td>
</tr>
<tr>
<td>Votre question : </td>
<td colspan=2><input type='text' name='question1' size=100 id='question1'><br /></td>
</tr>
<tr>
<td>Reponse 1 : </td><td><input type='text' name='reponse1' size='60' id='reponse1'></td>
<td><input type='radio' name='r1' value='1' id='r1'></td>
</tr>
<tr>
<td>Reponse 2 : </td><td><input type='text' name='reponse2' size='60' id='reponse2'></td>
<td><input type='radio' name='r1' value='2' id='r2'></td>
</tr>
<tr>
<td>Reponse 3 : </td><td><input type='text' name='reponse3' value='Je ne sais pas' size='60' disabled></td>
<td>Sélectionnez<br />la réponse<br />juste</td>
</tr>
</table></center><br />
<center><table border=0 class="cadre_sable_fonce">
<tr>
<td colspan=3>Question 2</td>
</tr>
<tr>
<td>Votre question : </td>
<td colspan=2><input type='text' name='question2' size='100' id='question2'><br /></td>
</tr>
<tr>
<td>Reponse 1 : </td><td><input type='text' name='reponse4' size='60' id='reponse4'></td>
<td><input type='radio' name='r2' value='4' id='r4'></td></tr><tr><td>Reponse 2 : </td>
<td><input type='text' name='reponse5' size='60' id='reponse5'></td>
<td><input type='radio' name'r2' value='5' id='r5'></td>
</tr>
<tr>
<td>Reponse 3 : </td>
<td><input type='text' name='reponse6' value='Je ne sais pas' size='60' disabled></td>
<td>Sélectionnez<br />la réponse<br />juste</td>
</tr></table></center><br />
<input type='hidden' name='nb_questions' value='2'>
<input type='hidden' name='nb_reponses' value='3'>
<input type='hidden' name='nom_qcm' value='qcm_blabla'>
<center><table class="cadre_rouge">
<tr>
<td><input type='submit' name='result' value='Générer le QCM'></td>
</tr>
</table></center>
</form>
</body>
</html>
0
jipicy Messages postés 40842 Date d'inscription jeudi 28 août 2003 Statut Modérateur Dernière intervention 10 août 2020 4 895
14 juil. 2007 à 10:25
Merci de n'ouvrir qu'un seul post pour un même problème !!!

Je ferme celui-ci ;-)
0