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>
- <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 :
- <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 :
- <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 :
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
Message édité par johnson951 le 06-12-2006 à 15:18:44