11548 sujets

JavaScript, DOM et API Web HTML5

Hello,

J'ai n'ai pas trouvé la solution en cherchant par moi-même, alors j'en appelle à vos compétences

La fonction affichage est appellée par un onChange sur une liste de sélection d'un formulaire.
Elle a pour but d'afficher uniquement le nombre de champs de saisie nécessaires à l'utilisateur.
Cela fonctionne parfaitement bien sous IE mais pas sous Firefox.
Aucun champs de saisie ne s'affiche!
Là je suis coincée.

var oldValeur=0;
function affichage() {     valeur=document.getElementById('selection').options[document.getElementById('selection').selectedIndex].text;
                  for (i = 1; i<= oldValeur;i++) {
                        document.getElementById ('tr'+i).style.display='none';

                  }
                  oldValeur = valeur;

            for(i=1;i<=valeur;i++){
            document.getElementById('tr'+i).style.display='block';
            }
 }

et dans le formulaire:

<select name="selection" size="1" onchange="affichage();">
                                <option value="zero">S&eacute;lectionnez un nombre</option>
          			<option value="un">1</option>
                		<option value="deux">2 </option>
                		<option value="trois">3 </option>
</select>

<TABLE border="0" id="tr1" style="display:none">
 	<Tr>
         <td width="60%"><strong>Titre(s) : </strong></td>
         <td width="25%"><strong>Code &agrave; barre(s) : </strong></td>
         </Tr>
         <Tr>
          <td width="60%"> <input name="titre_doc1" type="textarea" class="formulaire" size="60">
          </td>
          <td width="25%"> <input name="cb_doc1" type="text" class="formulaire" size="25">
          </Td>
        </tr>
	</table>

        <TABLE border="0" id="tr2" style="display:none">
        <Tr>
          <td width="60%"> <input name="titre_doc2" type="textarea" class="formulaire" size="60">
          </td>
          <td width="25%"> <input name="cb_doc2" type="text" class="formulaire" size="25">
          </Td>
        </tr>
	</table>

        <TABLE border="0" id="tr3" style="display:none">
        <Tr>
          <td width="60%"> <input name="titre_doc3" type="textarea" class="formulaire" size="60">
          </td>
          <td width="25%"> <input name="cb_doc3" type="text" class="formulaire" size="25">
          </Td>
        </tr>
        </TABLE>



Merci de votre aide Smiley smile
Modifié par SourisGrise70 (17 Oct 2006 - 12:37)
Modérateur
bonsoir,

c'est tout bête , une histoire de "standard" Smiley smile , pour ff , le name="selection" ne suffit pas , il faut un id="selection" !!

++