Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
938 connectés 

  FORUM HardWare.fr
  Programmation
  HTML/CSS

  Cmnt aller chercher une valeur dans des champs générés aleatoirement ?

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Cmnt aller chercher une valeur dans des champs générés aleatoirement ?

n°847459
Dj YeLL
$question = $to_be || !$to_be;
Posté le 11-09-2004 à 00:00:27  profilanswer
 

Bon, pas très simple déexpliquer dans un titre ce que je n'arrive pas faire ...
 
Alors voilà, sur une page, j'ai un certains nombre de champs texte qui sont créé, ce nombre varie de 1 à 9 ... ils ont l'appelation de "name=os1" à "name=os9"
 
J'aimerais un script qui aille vérifier les valeurs dans ces champs ...
 
document.forms["formulaire"].os1.value
document.forms["formulaire"].os2.value
...
document.forms["formulaire"].os9.value
 
Donc pour tester pas à pas j'ai fais ça :
 

Code :
  1. for(var i = 1;i < 10;i++)
  2. {
  3.  var e = i.toString();
  4.  alert(e); // à ce stade c'est bon, il m'affiche bien une alerte avec 1,2 ... 9
  5.  var os = "os" + e;
  6.  alert(os); // ici c'est toujours bon, il m'affiche bien une alerte avec os1, os2 ... os9
  7.  alert(document.forms['formulaire'].os.value); // c'est là que ça ne colle pas, qqn peut il me dire quoi faire ?
  8. }


 
Merci par avance

mood
Publicité
Posté le 11-09-2004 à 00:00:27  profilanswer
 

n°847483
Dj YeLL
$question = $to_be || !$to_be;
Posté le 11-09-2004 à 00:42:43  profilanswer
 

Bon, j'ai un peu avancé ...
 
En mettant ça :
 

Code :
  1. for(var i = 0;i < 10;i++)
  2. {
  3.   if(document.forms["formulaire"].os[i])
  4.   {
  5.     j = i*2;
  6.     k = j + 1;
  7.     if (document.forms["formulaire"].typemachine[j].checked == false && document.forms["formulaire"].typemachine[k].checked == false)
  8.     {
  9.       a = 1;
  10.       document.forms["formulaire"].imgtypemachine[i].style.display = "inline";
  11.     }
  12.     else
  13.     {
  14.       document.forms["formulaire"].imgtypemachine[i].style.display = "none";
  15.     }
  16.   }
  17. }


 
Ca fonctionne un peu mieux ... mais du fait que "typemachine" représente 2 boutons radios par "groupe", ça pose encore des pb ...
 
En gros, si j'ai 3 fois une meme partie du formulaire il me faudrait ça :
 
<input type="radio" name="test[0]">Oui
<input type="radio" name="test[0]">Non
 
<input type="radio" name="test[1]">Oui
<input type="radio" name="test[1]">Non
 
<input type="radio" name="test[2]">Oui
<input type="radio" name="test[2]">Non
 
Et dans mon script il faudrait donc que je verifie un truc dans ce genre :
 
document.forms["formulaire"].typemachine[0][0].checked == false && document.forms["formulaire"].typemachine[0][1].checked == false
 
document.forms["formulaire"].typemachine[1][0].checked == false && document.forms["formulaire"].typemachine[1][1].checked == false
 
document.forms["formulaire"].typemachine[2][0].checked == false && document.forms["formulaire"].typemachine[2][1].checked == false
 
J'ai essayé mais ça ne marche pas :(
 
Je ne sais pas si je suis assez clair ...
 
++

n°847484
Dj YeLL
$question = $to_be || !$to_be;
Posté le 11-09-2004 à 00:47:16  profilanswer
 

Bon comme il est tard et que je ne pense pas qu'on me réponde ce soir, je vais en profiter pour essayer d'expliquer encore plus clairement. Imaginez un formulaire de ce genre :
 

Etes-vous satisfait du modele 1 ?  o OUI   o NON
Etes-vous satisfait du modele 2 ?  o OUI   o NON
Etes-vous satisfait du modele n ?  o OUI   o NON


 
Ensuite je voudrais un script qui affiche une petite image juste devant la 1ere ligne si on n'a séléctionné ni oui ni non pour cette meme ligne ... et idem pour les autres, sachant que le nombre de ligne est aleatoire (de 1 à 9 lignes suivant les cas)
 
Merci d'avance

n°847595
cerel
Posté le 11-09-2004 à 11:51:40  profilanswer
 

Tu donne un id a tes elements, puis tu peux faire ca :

Code :
  1. for (var i = 1; i<10; i++) {
  2.   var el = document.getElementById('os'+i);
  3.   alert(el.value);
  4. }


n°847793
Dj YeLL
$question = $to_be || !$to_be;
Posté le 11-09-2004 à 16:43:23  profilanswer
 

Merci Cerel, mais ça ne résoud pas vriament mon problème ... etant donné que j'ai 2 bouton radio à chaque fois, donc les 2 premiers bouton radio auront le meme id, les 2 suivant aussi mais different que les 1er etc... merci quand meme :)
 
Donc sinon j'ai encore avancé ... ça ça marche presque :
 

Code :
  1. for(var i = 1;i < 10;i++)
  2. {
  3.   if(eval('document.forms["formulaire"].typemachine' + i))
  4.   {
  5.     if(eval('document.forms["formulaire"].typemachine' + i + '[0].checked == false && document.forms["formulaire"].typemachine' + i + '[1].checked == false'))
  6.     {
  7.       a = 1;
  8.       document.forms["formulaire"].imgtypemachine[i].style.display = "inline";
  9.     }
  10.     else
  11.     {
  12.       document.forms["formulaire"].imgtypemachine[i].style.display = "none";
  13.     }
  14.   }
  15. }


 
Le pb est que si j'ai 5 fois :
 

Etes-vous satisfait du modele n ?  o OUI   o NON


 
Ca va marcher 5 fois mais apres ça met une erreur ...
 
A priori la ligne :
 
if(eval('document.forms["formulaire"].typemachine' + i))
 
Ne renvoie pas TRUE ou FALSE suivant que l'element existe ou non...
 
Donc comment faire, en JS, pour verifier ou non l'existence d'un element de formulaire ?
 
Merci par avance.


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  HTML/CSS

  Cmnt aller chercher une valeur dans des champs générés aleatoirement ?

 

Sujets relatifs
Mettre a jour 2 champs en meme tempsAccès aux champs d'un formulaire dynamique
Pb d'aperçu de valeur sous excel[Javascript]Recuperer la valeur de l'élément selectionner d'un select
[VBA - Excel] Requette pour inserer des valeur dans une tableEliminer CR & LF dans champs texte dans Oracle
Valeur nulle et optimisation[JAVA] Récuperer la valeur flotante d'un float ?
[MySQL] 2 champs de meme nomComment récupere la valeur d'un array avec les globales ?
Plus de sujets relatifs à : Cmnt aller chercher une valeur dans des champs générés aleatoirement ?


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR