Problema concantenazione form

Peppe9880

Nuovo Utente
30 Mar 2020
2
0
1
Ciao a tutti,
Premetto che ho iniziato stamani mattina a studiare javascript ed ho un problema col mio form.
In pratica io ho bisogno di concatenare più select in un unico form
Vi faccio un esempio pratico:

Scegli tra: A - B - C
Se scegli A vedrai i seguenti campi: 1 - 2 - 3, Scegliendo uno di questi campi ad esempio 3 dovrà mostrare in un altro select altre opzioni.

Vi lascio il codice qua sotto:

HTML:
        <!-- PIATTAFORMA -->
        <script language="javascript">
            function selezionaOpzioni(scelta) {
                var campo_derivato = document.form.campo_derivato;
                campo_derivato.options.length = 0;

                if (scelta == "EPMP") {
                    campo_derivato.options[campo_derivato.options.length] = new Option('Capannina');
                    campo_derivato.options[campo_derivato.options.length] = new Option('Casciana Terme');
                    campo_derivato.options[campo_derivato.options.length] = new Option('Ceppato');
                    campo_derivato.options[campo_derivato.options.length] = new Option('Ghizzano');
                    campo_derivato.options[campo_derivato.options.length] = new Option('Lari');
                    campo_derivato.options[campo_derivato.options.length] = new Option('Melorie');
                    campo_derivato.options[campo_derivato.options.length] = new Option('Perignano');
                    campo_derivato.options[campo_derivato.options.length] = new Option('Poggini');
                    campo_derivato.options[campo_derivato.options.length] = new Option('Soiana');
                    campo_derivato.options[campo_derivato.options.length] = new Option('Vicopisano');
                }
                
                if (scelta == "450") {
                    campo_derivato.options[campo_derivato.options.length] = new Option('Pomodoro');
                    campo_derivato.options[campo_derivato.options.length] = new Option('Aglio');
                    campo_derivato.options[campo_derivato.options.length] = new Option('Origano');
                }
                
                if (scelta == "SICE") {
                    campo_derivato.options[campo_derivato.options.length] = new Option('Pomodoro');
                    campo_derivato.options[campo_derivato.options.length] = new Option('Funghi');
                    campo_derivato.options[campo_derivato.options.length] = new Option('Olive');
                    campo_derivato.options[campo_derivato.options.length] = new Option('Carciofini');
                }   
            }
            
            function aggiornaOpzioni(scelta){
                var valore_selezionato = document.form.campo_principale.selectedIndex;
                var campo = document.form.campo_principale.options;
                selezionaOpzioni(campo[valore_selezionato].value);
            }
        </script>
      
        
        
        <script language="javascript">
           function selezionaOpzioniFinal(scelta) {
                var campo_derivatoEPMP = document.form.campo_derivatoEPMP;
                campo_derivatoEPMP.options.length = 0;
              
               if (scelta == "Capannina") {
                   campo_derivatoEPMP.options[campo_derivatoEPMP.options.length] = new Option('Netfos44');
                   campo_derivatoEPMP.options[campo_derivatoEPMP.options.length] = new Option('Netfos45');
               }
              
            function aggiornaOpzioniFinal(scelta) {
                var valore_selezionato = document.form.campo_derivato.selectedIndex;
                var campo = document.form.campo_derivato.options;
                selezionaOpzioniFinal(campo[valore_selezionato].value);
            }   
              
        </script>
        
        
        
        <label for="piattaforma">Piattaforma:</label><br>
        <select name="campo_principale" required onChange="aggiornaOpzioni();">
            <option value="" selected disabled hidden>Scegli</option>
            <option value="EPMP">EPMP</option>
            <option value="450">450</option>
            <option value="SICE">SICE</option>
        </select>
        <br><br>
        
        Seleziona AP:<br>
        <select name="campo_derivato" onChange="aggiornaOpzioniFinal();">
        </select><br><br>
        
        Seleziona Punto di Connessione:<br>
        <select name="campo_derivatoEPMP">
        </select>
        <br><br>
 

Max 1

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
29 Feb 2012
4.246
324
83
Quando si apre una discussione su un forum chiedendo aiuto per un proprio problema e si risolve autonomamente è sempre educazione e buona norma postare la soluzione in modo che altri utenti del forum ne possano usufruire, considerato che quando si entra in un forum si viene a far parte di una comunità!