Pagina 1 di 4 1 2 3 ... ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 34
  1. #1

    Select Regioni e province

    Ciao a tutti,
    premetto che javascript lo conosco in maniera sommariamente pessima, quindi mi scuso fin da ora se la questione che vi pongo sembrerà ai più banale.
    Insultatemi pure.

    Dovrei realizzare un form, che permette di scegliere con una select una regione. Selezionato il valore di una regione, sto tentando di realizzare un javascript che compili una nuova select con le provincie relative a quella regione.

    L'idea è quella di fare una funzione che si attivi sul selectedIndex della prima form, e compili la seconda (serie di if, che controllano il valore della regione selezionata).

    E' fattibile?
    Come faccio a riempire le option di una select se non hanno lo stesso numero di campi (ogni regione non ha lo stesso numero di province...purtroppo)?
    Nell'html ho lasciato ingenuamente la select vuota, e ho sperato che magicamente il js mettesse le option... credo sinceramente di aver chiesto troppo.
    Ovviamente non funzione (hihihihi)

    Anche se funzionasse poi, analogamente non sono in grado di settare il value di ciascuna option.

    C'è qualche buon'anima che mi suggerisce qualcosa?

    Grazie...

    Griz.
    {{__Let's do the time warp again __}}

  2. #2
    Frontend samurai L'avatar di fcaldera
    Registrato dal
    Feb 2003
    Messaggi
    12,924
    un esempio... utilizza il case invece degli if.


    codice:
    <head>
    <script type="text/javascript">
    function regione(reg) {
    
       if (reg == "") return;
       
       var province = new Array();
       var selProv = document.getElementById('province');
       while(selProv.options.length > 0) selProv.removeChild(selProv.options[0]); 
       
       
       switch(reg) {
        
            case 'veneto':            
                province.push('Treviso');
                province.push('Venezia');
                province.push('Belluno');
                //...
                break;
       
            case 'trentino': 
                province.push('Bolzano');
                province.push('Trento');
                province.push('Mich :-)');
                break;
                
                
            // altre regioni
            default: 
       }
    
        
       for (i=0; i<province.length; i++) {
          opt = document.createElement('option');
          opt.setAttribute('value', province[i]);
          opt.setAttribute('text', province[i]);
          opt.innerHTML = province[i];
          selProv.appendChild(opt);
       }
    }
    </script>
    </head>
    
    <body>
    
    <select id="regioni" onchange="regione(this.value)">
      <option value="">Scegli regione</option>
      <option value="veneto">Veneto</option>
      <option value="trentino">Trentino Alto Adige</option>
    </select>
    
    <select id="province"></select>
    
    </body>

    Ciao
    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 1000!

    Provo subito!
    {{__Let's do the time warp again __}}

  4. #4
    E COME RECUPERO IL DATO SELEZIONATO?

    Mi spiego:

    Ho accuratamente settato il tutto secondo le mie esigenze nella mia pagina php e ho bisogno in qualche modo che questo dato venga visualizzato o meglio venga messo in una variabile con la quale io poi possa fare ciò che voglio. Come fare
    Prima o poi anch'io vi insegnerò qualcosa

  5. #5
    ma se non si tratasse di regioni e provincie ma di elementi di und b

  6. #6
    Utente di HTML.it L'avatar di blekm
    Registrato dal
    Jun 2004
    Messaggi
    8,310
    Originariamente inviato da fcaldera
    un esempio... utilizza il case invece degli if.

    codice:
    .... 
    
    ....

    Ciao
    domanda riguardante il tuo codice: l'ho modificato, adattato per la mia esigenza.. provincia e comune. La prima select ha

    SCEGLI PROVINCIA
    LUCCA
    PISA

    seconda select, vuota inizialmente, se scelto LUCCA mi da comuni di Lucca, se scelgo PISA mi da comuni di Pisa..

    però se io uso Pisa o Lucca, e poi riporto la prima SELECT su SCEGLI PROVINCIA (diciamo situazione iniziale), nella seconda mi rimane memorizzato l'ultimo valore.. è possibile resettare la seconda select quando nella prima (dopo aver già fatto una scelta) ritorno nella linguetta SCEGLI PROVINCIA?

    spero di essermi spiegato, altrimenti ci riprovo..

    EDIT: ho anche usato un tasto RESET per resettare tutti i valori della mia pagina, ma la seconda select non viene resettata! ovviamente, quando contiene un valore..
    Il portale sul turismo a Lucca

    Siti web Lucca

    Vendo Tex a colori di Repubblica (primi 100 numeri) - info in pvt.

  7. #7
    Utente di HTML.it L'avatar di blekm
    Registrato dal
    Jun 2004
    Messaggi
    8,310
    up
    Il portale sul turismo a Lucca

    Siti web Lucca

    Vendo Tex a colori di Repubblica (primi 100 numeri) - info in pvt.

  8. #8
    Frontend samurai L'avatar di fcaldera
    Registrato dal
    Feb 2003
    Messaggi
    12,924
    Nell'esempio sopra basta invertire queste righe

    codice:
       if (reg == "") return;
       
       var province = new Array();
       var selProv = document.getElementById('province');
       while(selProv.options.length > 0) selProv.removeChild(selProv.options[0]);
    in
    codice:
     
       var province = new Array();
       var selProv = document.getElementById('province');
       while(selProv.options.length > 0) selProv.removeChild(selProv.options[0]); 
    
       if (reg == "") return;
    Vuoi aiutare la riforestazione responsabile?

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

  9. #9
    Utente di HTML.it L'avatar di blekm
    Registrato dal
    Jun 2004
    Messaggi
    8,310
    Originariamente inviato da fcaldera
    Nell'esempio sopra basta invertire queste righe

    codice:
       if (reg == "") return;
       
       var province = new Array();
       var selProv = document.getElementById('province');
       while(selProv.options.length > 0) selProv.removeChild(selProv.options[0]);
    in
    codice:
     
       var province = new Array();
       var selProv = document.getElementById('province');
       while(selProv.options.length > 0) selProv.removeChild(selProv.options[0]); 
    
       if (reg == "") return;
    grazie, proverò. Ti farò sapere se funziona.
    Il portale sul turismo a Lucca

    Siti web Lucca

    Vendo Tex a colori di Repubblica (primi 100 numeri) - info in pvt.

  10. #10
    Utente di HTML.it L'avatar di blekm
    Registrato dal
    Jun 2004
    Messaggi
    8,310
    perfetto, è quello che volevo!

    grazie ancora!
    Il portale sul turismo a Lucca

    Siti web Lucca

    Vendo Tex a colori di Repubblica (primi 100 numeri) - info in pvt.

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.