Visualizzazione dei risultati da 1 a 4 su 4

Discussione: tendina dinamica

  1. #1

    tendina dinamica

    Ciao a tutti.
    Qualcuno saprebbe dirmi come fare quanto segue:

    Vorrei creare un form in cui ci sono due tendine (<select>).

    Quando un utente fa click su un certo campo della prima tendina, vorrei che scomparisse un campo della seconda. Per esempio:

    <select name=prima_tendina>
    <option>primocampo
    <option>secondocampo
    <option>terzocampo
    </select>


    <select name=seconda_tendina>
    <option>campo1
    <option>campo2
    <option>campo3
    <option>campo4
    </select>



    quello che vorrei ottenere è che quando l' utente sceglie, ad esempio, la option secondocampo (nel primo select), scompaia la option campo4 (del secondo select). Ovviamente, se la scelta dell' utente è diversa da secondocampo (nel primo select), vorrei che tutti i campi della tendina (secondo select) fossero visualizzati.

    Spero di essere stato chiaro.
    Grazie a tutti

  2. #2
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    Immagino che lo scopo finale differisca di qualche virgola dalla tua descrizione, per ora accontentati del semplice risultato che hai chiesto

    <select name=prima_tendina onchange="if(this.selectedIndex==1) this.form.seconda_tendina.options[3]=null;">

    ciao
    Il guaio per i poveri computers e' che sono gli uomini a comandarli.

    Attenzione ai titoli delle discussioni: (ri)leggete il regolamento
    Consultate la discussione in rilievo: script / discussioni utili
    Usate la funzione di Ricerca del Forum

  3. #3
    lo script che mi hai dato funziona, solo che c'è un piccolo problema: se nella seconda tendina ho 10 option, quando clicco nel primo option della prima tendina, mi scompare una delle option della seconda (quindi diventano 9) ma, quando clicco successivamente nel nel secondo option della prima tendina, quello che era scomparso nella seconda tendina non ricompare più (rimangono 9, in sostanza).
    Come fare???

    Grazie

  4. #4
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    Vedi che le cose cominciano a complicarsi?
    codice:
    <script>
    var campi = new Array("campo1","campo2","campo3","campo4","campo5","campo6","campo7","campo8","campo9","campo10");
    function cambia(obj) {
    for (var i=<campi.length-1;i>=0;i--) {
      obj.form.seconda_tendina.options[i]=null;
    }
    for (var i=0;i<campi.length;i++) {
      obj.form.seconda_tendina.options[i]=new Option(campi[i]);
    }
    if(obj.selectedIndex==1) obj.form.seconda_tendina.options[3]=null;
    }
    </script>
    ...
    ...
    <select name=prima_tendina onchange="cambia(this);">
    ciao
    Il guaio per i poveri computers e' che sono gli uomini a comandarli.

    Attenzione ai titoli delle discussioni: (ri)leggete il regolamento
    Consultate la discussione in rilievo: script / discussioni utili
    Usate la funzione di Ricerca del Forum

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.