Problema javascript: select e apertura tabella

di il
1 risposte

Problema javascript: select e apertura tabella

Salve a tutti del forum.
Il mio problema riguarda la funzione qui sotto.

function aggiornaOpzioni(scelta){
        var select = document.getElementById("metodall");
        var scelte = new Array();
		var c = document.getElementById('Harre');
	    var d = document.getElementById('Bulgaro');
			switch(scelta) {
            case '1':                
                scelte[0] = "Test di Harre";
                scelte[1] = "Metodo Bulgaro";
                break;
            
			case '2':                
                scelte[0] = "LIGHT TO HEAVY SYSTEM";
                scelte[1] = "HEAVY TO LIGHT SYSTEM";
                break;
            default:
                break;
        }         
          select.options.length = 1;
        for(var i=0; i<scelte.length; i++) {                
            select.options[select.options.length] = new Option(scelte[i],scelte[i]);        
			
		   }

Ho due select in cui la scelta della prima cambierà i contenuti della seconda.
Quello che nono riesco a fare è che in base alla voce scelta nella secoda select dovrò aprire una tabella relativa,il tutto tramite un bottone(seleziono voce--bottone--apertura).
A senso non dovrei scrivere una nuova funzione ma implementare quella in cui sono presenti le voci della select a cui voglio associare un evento.
Ho provato a inserire questo codice in fondo alla funzione ma continua ad aprirmi solo una tabella,inoltre come vi ho spiegato vorrei farla aprire tramite un bottone..

   if (scelte[""] == scelte[0])
   c.style.display="inline";
	   else
   if (scelte[""] == scelte[1])
   d.style.display="inline";

Vi posto anche il codice HTML
Grazie in anticipo a tutti


<div id="Bulgaro">
<form name="sommare">
<table border="1">
    <tr>
       METODO BULGARO
   </tr>
    <tr>
      <td><label class="Bulgaro">%DEL MAX</label></td>
      <td>RIPETIZIONI</td>
      <td>SERIE</td>
      <td>VELOCITA'</td>  
   </tr>
     <tr>
<td><input type="text"  size="4" class="corpo" name="Massimale()" disabled="disabled" readonly="readonly" id="w"></td>
   <td>1-4</td>
   <td>1</td>
   <td>MODERATA</td>
   </tr>
   <tr>
<td><input type="text"  size="4" class="corpo" name="Massimale()" disabled="disabled" readonly="readonly" id="y"></td>
   <td>4-8</td>
   <td>1</td>
   <td>MASSIMA</td>
   </tr>
</table>
</div>	

<div id="Harre">
<form name="sommare">
<table border="1">
    <tr>
       TEST DI HARRE
   </tr>
    <tr>
      <td><label class="HARRE">%1 RM</label></td>
      <td>RIPETIZIONI</td>
      <td>VELOCITA'</td>
      <td>RECUPERO</td>  
      <td>SPECIFICITA'</td>    
   </tr>
     <tr>
<td><input type="text"  size="4" class="corpo" name="Massimale()" disabled="disabled" readonly="readonly" id="z7"></td>
   <td>1-5</td>
   <td>BASSA</td>
   <td>3-5'</td>
   <td>FORZA MASSIMALE</td>
   </tr>
   <tr>
<td><input type="text"  size="4" class="corpo" name="Massimale()" disabled="disabled" readonly="readonly" id="z8"></td>
   <td>5-10</td>
   <td>BASSA</td>
   <td>2-4'</td>
    <td>FORZA MAX IPERTROFIA</td>
   </tr>
   <tr>
<td><input type="text"  size="4" class="corpo" name="Massimale()" disabled="disabled" readonly="readonly" id="z9"></td>
   <td>6-10</td>
   <td>MASSIMA</td>
   <td>4-6'</td>
    <td>FORZA VELOCE</td>
   </tr>
     <tr>
<td><input type="text"  size="4" class="corpo" name="Massimale()" disabled="disabled" readonly="readonly" id="z10"></td>
   <td>20-30</td>
   <td>BASSA</td>
   <td>35-40''</td>
    <td>FORZA RESISTENTE</td>
   </tr>
   <tr>
<td><input type="text"  size="4" class="corpo" name="Massimale()" disabled="disabled" readonly="readonly" id="z11"></td>
   <td>25-30</td>
   <td>MODERATA</td>
   <td>OTTIMALE</td>
    <td>FORZA RESISTENTE</td>
   </tr>
   </table>
</div>

 <div id="i1">
<form name="sommare">
<table border="1">

SESSO
<select name="sesso" size="1">
<option selected></option>
<option value ="maschio">Maschio</option>
<option value ="femmina">Femmina</option>
</select>

ETA'
<input name="eta" size="5">

ALTEZZA
<input name="altezza" size="5">

PESO
<input name="peso" size="5">

MASSIMALE
<input type="text" size="5" class="corpo" id="d">

SCEGLI MUSCOLI
<select>
<option selected></option>
<option>Pettorali</option>
<option>Bicipiti</option>
<option>Dorsali</option>
<option>Addominali</option>
<option>Tutti</option>
</select>

[color=#80BF00]
<br>
SCEGLI OBBIETTIVO
<select name="obbiet" size ="1" onchange="aggiornaOpzioni(this.options[this.selectedIndex].value);">
<option selected></option>
<option value="1">Forza</option>
<option value="2">Massa</option>
</select>
SCEGLI METODO ALLENAMENTO
<select id="metodall" name="metodall"  onchange="aggiornaOpzioni()" size ="1">
<option selected></option>
</select>&nbsp;&nbsp;&nbsp;&nbsp;

<input type="button" onClick="Massimale();aggiornaOpzioni();" class="bottone" value="CALCOLA">
 </table>
</div>[/color]

<div id="risultati">
<form name="sommare">
<table border="1">
<tr>
   <td bgcolor="#C0C0C0"><font color="black"><b>PESO FORMA</b><br>
   <input align="right" name="pesoforma" size="4"></font></td>
   
   <td bgcolor="#C0C0C0"><font color="black"><b>PESO M/F</b><br>
   <input align="right" name="pesomf" size="4"></font></td>
   
   <td bgcolor="#C0C0C0"><font color="black"><b>METABOLISMO</b><br>
   <input align="right" name="metaabolismo" size="4"></font></td>
   
   <td bgcolor="#C0C0C0"><font color="black"><b>METABOLISMO BASALE</b><br>
   <input align="right" name="mb" size="4"></font></td>
   
   </tr>
     </table>
</form> 
</div>

</body>
</html>

1 Risposte

  • Re: Problema javascript: select e apertura tabella

    Nessuno può aiutarmi.
    Il problerma dovrebbe esser abbastanza semplice da risolvere, ma purtroppo non per me...
    Sto facendo varie prove sul codice ma senza grandi risultati..ad ora sto provando ad annidare un secondo switch statement per farmi aprire le tabelle una volta selezionata l'opzione,ma non capisco dove sto sbagliando..
    
    function aggiornaOpzioni(scelta){
            var sel = document.getElementById("metodall");
            var scelte = new Array();
    		var car = new Array();
      
            		switch(scelta) {
                case '1':                
                    scelte[0] = "Test di Harre"; 
    				scelte[1] = "Metodo Bulgaro";
    			switch(scelte) {
                case "0": document.getElementById("Harre").style.display="inline"; 
    			case "1": document.getElementById("Bulgaro").style.display="inline";
    			    break;
         		case '2':                
                    scelte[0] = "LIGHT TO HEAVY SYSTEM";
                    scelte[1] = "HEAVY TO LIGHT SYSTEM";
                    break;
                default:
                    break;
            }         
            }
    		// azzero le option            
            sel.options.length = 1;
            // creo le option in base agli elementi degli array
            for(var i=0; i<scelte.length; i++) {                
                sel.options[sel.options.length] = new Option(scelte[i],scelte[i]);        
    		   }
    

    Consigli??
Devi accedere o registrarti per scrivere nel forum
1 risposte