Visualizzazione dei risultati da 1 a 9 su 9
  1. #1

    visualizzare e nascondere option con un checkbox

    Ciao a tutti, in una pagina html ho un form con un select, vorrei che se la checkbox è selezionata visualizzo alcuni option, altrimenti altri.
    es:

    checkbox selezionata
    <select>
    <option>A</option>
    <option>C</option>
    <option>D</option>
    </select>


    checkbox non selezionata
    <select>
    <option>B</option>
    </select>

    Come posso fare?

    Spero di essere stato chiaro


  2. #2
    Frontend samurai L'avatar di fcaldera
    Registrato dal
    Feb 2003
    Messaggi
    12,924
    codice:
    <head>
    <script type="text/javascript">
    function applyOpt(cb) {
       if (cb == undefined) cb = false;
    
       var opzioni = new Array();
       var selopt = document.getElementById('opzioni');
       while(selopt.options.length > 0) selopt.removeChild(selopt.options[0]); 
       
       
       if (cb) {
              
                opzioni.push('A');
                opzioni.push('B');
                opzioni.push('D');
       }
       else {
                opzioni.push('C');
       }
    
        
       for (i=0; i<opzioni.length; i++) {
          opt = document.createElement('option');
          opt.setAttribute('value', opzioni[i]);
          opt.setAttribute('text', opzioni[i]);
          opt.innerHTML = opzioni[i];
          selopt.appendChild(opt);
       }
    }
    </script>
    </head>
    
    <body onload="applyOpt(document.getElementById('opzioni').checked)">
    
    <input type="checkbox" onclick="applyOpt(this.checked)" />
    <select id="opzioni">
    </select>
    
    </body>

    Ciao
    -Fab-




    Keywords: contenuto valori option select determinati dipendenti scelta checkbox
    Vuoi aiutare la riforestazione responsabile?

    Iscriviti a Ecologi e inizia a rimuovere la tua impronta ecologica (30 alberi extra usando il referral)

  3. #3
    Grazie,
    però mi funziona solo in parte,
    le varie opzioni me le aggiunge sulla stessa riga, dovrebbe aggiungermele una sotto l'altra, poi ogni volta che clicco sulla checkbox mi aggiunge le opzioni sulla stessa riga e mi visualizza quelle di prima:

    all'inizio ho solo C

    se clicco una volta ho
    CABD

    se clicco ancora una volta ho
    CABDC

    e così via...

    non capisco dove sbaglio.

    Inoltre non posso selezionarlo

    per caso può dipendere dal browser? Io ho firefox

    Grazie

  4. #4
    Frontend samurai L'avatar di fcaldera
    Registrato dal
    Feb 2003
    Messaggi
    12,924
    Se ti serve incrementare di volta in volta la select senza cancellarla al click ti basta commentare questa riga

    codice:
       //while(selopt.options.length > 0) selopt.removeChild(selopt.options[0]);
    all'interno della funzione


    Ciao
    Vuoi aiutare la riforestazione responsabile?

    Iscriviti a Ecologi e inizia a rimuovere la tua impronta ecologica (30 alberi extra usando il referral)

  5. #5
    Il mio problema è proprio che mi incremente la option e poi non mi crea ogni volta una nuova option ma mi aggiunge il valore alla option che ho.

    Mi ritrovo ad avere sempre una sola option che è ogni volta più lunga e non posso nemmeno selezionarla

  6. #6
    Frontend samurai L'avatar di fcaldera
    Registrato dal
    Feb 2003
    Messaggi
    12,924
    spero di aver capito bene stavolta.. tu non vuoi fare switch delle select come pensavo dal tuo primo post, né aggiungere options di volta in volta

    Tu vuoi aggiungere più select una sotto l'altra e incrementare il numero delle select in modo alternato (prima quella con una sola opzione, poi quella da tre, e così via ... giusto?)
    Vuoi aiutare la riforestazione responsabile?

    Iscriviti a Ecologi e inizia a rimuovere la tua impronta ecologica (30 alberi extra usando il referral)

  7. #7
    Io vorrei che se la checkbox è selezionata vedo alcune scelte, se non è selezionata ne vedo altre

  8. #8
    Frontend samurai L'avatar di fcaldera
    Registrato dal
    Feb 2003
    Messaggi
    12,924
    Originariamente inviato da maurocoviello
    Io vorrei che se la checkbox è selezionata vedo alcune scelte, se non è selezionata ne vedo altre
    ed è esattamente ciò che fa il primo codice che ti ho postato...
    (testato su IE 6 e FF 1.0.4)
    Vuoi aiutare la riforestazione responsabile?

    Iscriviti a Ecologi e inizia a rimuovere la tua impronta ecologica (30 alberi extra usando il referral)

  9. #9
    Ho usato il codice che mi hai dato e mi si verificano gli inconvenienti che ti ho detto.

    nella select arrivo ad avere una scelta sola che diventa ogni volata più lunga e poi non è selezionabile, ho controllato anche la versione del browser

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.