[Javascript]verifier le contenu d'un input

Fermé
bezourox Messages postés 730 Date d'inscription   Statut Membre Dernière intervention   -  
jipicy Messages postés 40842 Date d'inscription   Statut Modérateur Dernière intervention   -
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 .
Configuration: Windows XP
Firefox 2.0.0.4

7 réponses

  1. Tiller Messages postés 783 Statut Membre 211
     
    <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
  2. bezourox
     
    ok ok merci .
    je vais regarder ca dans la matinée .
    a plus tard .
    1
  3. bezourox Messages postés 730 Date d'inscription   Statut Membre Dernière intervention   143
     
    bon et bien ta solution ne marche pas non plus .
    je commence a perdre patience avec ce javascript de m**** :)
    0
  4. Tiller Messages postés 783 Statut Membre 211
     
    Ma solution marche parfaitement ;o

    T'as du mal l'employé, fait voir ton code complet
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. bezourox Messages postés 730 Date d'inscription   Statut Membre Dernière intervention   143
     
    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
  7. bezourox Messages postés 730 Date d'inscription   Statut Membre Dernière intervention   143
     
    <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
  8. jipicy Messages postés 40842 Date d'inscription   Statut Modérateur Dernière intervention   4 898
     
    Merci de n'ouvrir qu'un seul post pour un même problème !!!

    Je ferme celui-ci ;-)
    0