Bonjour,

Voici ma configuration, je possede deux pages :
la premiere qui contient uniquement un champ de texte pour inserer le nombre de ligne que désire avoir l'utilisateur



Code HTML : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
<html>
<head>
  <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
  <title>Document sans titre</title>
</head>
<body>
<form name="form1" method="post" action="test1.php">
      Nombre de ligne<input type="text" name="nbr"><BR>
      <input type="submit" name="Submit"value="Envoyer">
</form>
</body>


Puis une seconde qui crée dynamique un tableau avec 2 colonne et n lignes (selon la valeur que l'utlisateur a inseré dans la page précédente l'utilisateur)



Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
<html><head><meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"><title>Document sans titre</title>  </head> <body>
<form name="form1" method="post" action="test2.php">
<?php  
for ($i=0;$i<$nbr;$i++){
?>   
 <tr>      
<td width="84" height="47"><div>   
 <?php       
 echo "<input name='num".$i."' type='text'>";    
?>     
 </div>
</td>      
<td width="169">
<div>   
 <?php       
 echo "<input name='nom".$i."' type='text'>";    
?>             
</div></td>
<?php
}
?>
<p>
<input type="button" name="button" value="Retour" onclick="history.go(-1)">  
<input name="Submit" type="submit" value="Envoyer" onSubmit="return validation();>
</p></form>
</body><
/html>


En fait ce que j'aimerais faire maintenant c'est lors de l'appui sur le bouton envoyer de vérifier par javascript si l'ensemble des cases sont remplies.

J'ai donc fait une petite fonction en javascript que j'appel lorsque je clique sur envoyer


Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
<script language="javascript" type="text/javascript"> 
function validation() {  
   var test = 0;   
 if(document.form1.???.value == "" ) 
    {           
 document.form1.???.style.background = "red"; 
 document.form1.???.focus(); 
 test ++;        
    }    
else document.form1.???.style.background = "white";       
 if (test > 0) return false;    
else return true;}</script>

Le probleme avec le javascript est qu'il faut le nom de la case or dans mon cas mes cases se nomme num0, num1...
Or pour verifier il faut ecrire document.form1.nom0.value == ""

j'aimerais donc pouvoir remplacer nom0 par quelque chose comme nom.i afin de rentré cela dans une boucle et faire une vérification avec une boucle uniquement comme ceci :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
var test = 0; 
for (i=0;i<nbr;i++){ 
 if(document.form1.nom(i).value == "" )  
 {  
        document.form1.nom(i).style.background = "red"; 
         document.form1.nom(i).focus();  
         test ++; 
     } 
 else document.form1.nom(i).style.background = "white"; 
 
 if (test > 0) return false; 
 else return true; 
}
Est ce possible ?
Ou avez vous une autre solution ?

Merci de votre aide !
Johnson