Onchang/select/menu[RESOLU]thx

Onchang/select/menu[RESOLU]thx - HTML/CSS - Programmation

Marsh Posté le 20-05-2008 à 15:19:37    

Ola !  
bonjour javascripteur!
voila je travail sur une petite aplication (BDD) avec formulaire d'insertion PHP/SQL et j'ai besoin d'un bout de code javascript mais je bloque :/
 
le bute :
 
j'ai un menu deroulant choix1, choix2....
en fonction du choix je souhait fair aparaitre certain elements du formulaire  
voila ce que j'ai fait mais rien ne ce passe ni message d'erreur
 
je n'ai jamais fait de javascript donc j'ai chercher des cours pour fair cela et sans resultats lol
 

Code :
  1. <script language="JavaScript" type="text/javascript">
  2. <!--
  3. function denom(ligneselected)
  4. {
  5.       if((document.getElementById(ligneselected).style.display) == 'none');
  6.       {
  7.         document.getElementById(ligneselected).style.display = 'block';
  8.       }
  9. }
  10. //-->
  11. </script>
  12. <form id="id_seldenom" name="seldenom" method="post">
  13.   Denomination
  14.     <select name="denom" onChange="this.value" id="id_denom" >
  15.       <option selected>select</option>
  16.       <option value="uc">unite centrale</option>
  17.       <option value="ec">ecran</option>
  18.       <option value="ondu">onduleur</option>
  19.       <option value="scan">scan</option>
  20.       <option value="imp">imprimante</option>
  21.       <option value="pda">pda</option>
  22.       <option value="gps">gps</option>
  23.       <option value="srv">serveur</option>
  24.       <option value="video">video pro</option>
  25.       <option value="portable">portable</option>
  26.     </select>
  27. </form>
  28. <table id="uc" style="display:none;" width="30%" height="20%">
  29.   <tr height="55" align="center" valign="middle">
  30.     <td height="22" colspan="12" align="center" valign="middle"><strong>show UC</strong></td>
  31.   </tr>
  32. </table>


 
la voila donc je vous remerci par avance pour votre aide sei
 
"RESOLU"
le probleme vien de moi ^^  
je vien seulement de comprendre comment utilisé de maniere efficase le parametre "fonction name(parametre)"
 
merci pour votre aide


Message édité par ails le 29-05-2008 à 15:55:21

---------------
Ritouné mwen lé ritounin
Reply

Marsh Posté le 20-05-2008 à 15:19:37   

Reply

Marsh Posté le 20-05-2008 à 15:20:34    

document.getElementById prend une string, déjà
 
(pas lu le reste, mais ça doit pas aider)
 
edit: sinon, essaie d'automatiser ton truc en bouclant sur les options, ça va te faire 292 lignes sinon si tu fais chaque cas...


Message édité par sielfried le 20-05-2008 à 15:21:44

---------------
StarCraft Professional Gaming Database | [Ze Topic] Starcraft/BroodWar
Reply

Marsh Posté le 20-05-2008 à 15:45:57    

merci pour votre reponse
 
j ai testé la fontion getElementById mais je doit mal l'utiliser parce que c'est pas mieu
 
et pour simplifier je probleme j aurais aimé savoir comment fonction la recuperation du "value dans le select"  
 
j'ai tester beaucoup de chose (this, etc ) mais ca ne change rien  
 
meme avec un alert pour verifier qu il a bien  recuperé le value mais la non plus il ne ce passe rien
 
merci


---------------
Ritouné mwen lé ritounin
Reply

Marsh Posté le 20-05-2008 à 15:47:04    

edit: désolé mauvaise manipulation  :sweat:  :pt1cable:


Message édité par ails le 20-05-2008 à 15:50:32
Reply

Marsh Posté le 20-05-2008 à 16:00:10    

- c'est quoi, show ?
- ta condition dans la fonction c'est n'importe quoi, récupère le select avec getElementById, puis utilise select.options[select.selectedIndex].value


---------------
StarCraft Professional Gaming Database | [Ze Topic] Starcraft/BroodWar
Reply

Marsh Posté le 20-05-2008 à 17:22:28    

encor merci ^^ voila j'ai tous modifié et ca fonction a moitié
 
j'explique:
 

Code :
  1. <script language="JavaScript" type="text/javascript">
  2. <!--
  3. function listdenom(uc)
  4. {
  5.       if(document.seldenom.elements['denom'].options[document.seldenom.elements['denom'].selectedIndex].value == "uc" )
  6.       {
  7.          document.getElementById(uc).style.display = 'block';
  8.  document.getElementById(ec).style.display = 'block';
  9.       }
  10. }
  11. //-->
  12. </script>
  13. </p>
  14. <form id="id_seldenom" name="seldenom" method="post">
  15.   Denomination
  16.     <select name="denom" onChange="listdenom(this.value)" id="id_denom" >
  17.       <option selected>select</option>
  18.       <option value="uc">unite centrale</option>
  19.       <option value="ec">ecran</option>
  20.       <option value="ondu">onduleur</option>
  21.       <option value="scan">scan</option>
  22.       <option value="imp">imprimante</option>
  23.       <option value="pda">pda</option>
  24.       <option value="gps">gps</option>
  25.       <option value="srv">serveur</option>
  26.       <option value="video">video pro</option>
  27.       <option value="portable">portable</option>
  28.     </select>
  29. </form>
  30. <table id="uc" style="display:none;" width="27%" height="21%">
  31.   <tr height="54" align="center" valign="middle">
  32.     <td height="21" colspan="12" align="center" valign="middle"><strong>UC</strong></td>
  33.   </tr>
  34. </table>
  35. <table id="ec" style="display:none;" width="27%" height="21%">
  36.   <tr height="54" align="center" valign="middle">
  37.     <td height="21" colspan="12" align="center" valign="middle"><strong>EC</strong></td>
  38.   </tr>
  39. </table>


 
1.1) function listdenom(uc)
1.2) function listdenom(document.seldenom.elements['denom'].options[document.seldenom.elements['denom'].selectedIndex].value)
 
je suis obligé d'ecrire uc(1.1) pour que ca fonction alors que j avais pensé metre cela (1.2) mais ca ne fonctione pas :/  cette ligne n'est elle pas la ligne qui recupere le value dans le select ?? si oui cela revien au meme que d'ecrire uc ?
 
2.1) la fonction executer ne fonctione que pour uc et ec ne passe pa a block savez vous pourquoi ?
      {
         document.getElementById(uc).style.display = 'block';
  document.getElementById(ec).style.display = 'block';
      }

Reply

Marsh Posté le 21-05-2008 à 10:10:59    

ails a écrit :

encor merci ^^ voila j'ai tous modifié et ca fonction a moitié
 
j'explique:
 

Code :
  1. <script language="JavaScript" type="text/javascript">
  2. <!--
  3. function listdenom(uc)
  4. {
  5.       if(document.seldenom.elements['denom'].options[document.seldenom.elements['denom'].selectedIndex].value == "uc" )
  6.       {
  7.          document.getElementById(uc).style.display = 'block';
  8.  document.getElementById(ec).style.display = 'block';
  9.       }
  10. }
  11. //-->
  12. </script>
  13. </p>
  14. <form id="id_seldenom" name="seldenom" method="post">
  15.   Denomination
  16.     <select name="denom" onChange="listdenom(this.value)" id="id_denom" >
  17.       <option selected>select</option>
  18.       <option value="uc">unite centrale</option>
  19.       <option value="ec">ecran</option>
  20.       <option value="ondu">onduleur</option>
  21.       <option value="scan">scan</option>
  22.       <option value="imp">imprimante</option>
  23.       <option value="pda">pda</option>
  24.       <option value="gps">gps</option>
  25.       <option value="srv">serveur</option>
  26.       <option value="video">video pro</option>
  27.       <option value="portable">portable</option>
  28.     </select>
  29. </form>
  30. <table id="uc" style="display:none;" width="27%" height="21%">
  31.   <tr height="54" align="center" valign="middle">
  32.     <td height="21" colspan="12" align="center" valign="middle"><strong>UC</strong></td>
  33.   </tr>
  34. </table>
  35. <table id="ec" style="display:none;" width="27%" height="21%">
  36.   <tr height="54" align="center" valign="middle">
  37.     <td height="21" colspan="12" align="center" valign="middle"><strong>EC</strong></td>
  38.   </tr>
  39. </table>


 
1.1) function listdenom(uc)
1.2) function listdenom(document.seldenom.elements['denom'].options[document.seldenom.elements['denom'].selectedIndex].value)
 
je suis obligé d'ecrire uc(1.1) pour que ca fonction alors que j avais pensé metre cela (1.2) mais ca ne fonctione pas :/  cette ligne n'est elle pas la ligne qui recupere le value dans le select ?? si oui cela revien au meme que d'ecrire uc ?
 
2.1) la fonction executer ne fonctione que pour uc et ec ne passe pa a block savez vous pourquoi ?
      {
         document.getElementById(uc).style.display = 'block';
  document.getElementById(ec).style.display = 'block';
      }


 
edit : pouvez vous me dir comment remplacer la valeur "uc" sur cette ligne : function listdenom(uc) par une ligne dynamique qui recup la value de select ?


---------------
Ritouné mwen lé ritounin
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed