Droplist con oggetto a comparsa

Discussione in 'Javascript' iniziata da GI89, 21 Aprile 2012.

Tag (etichette):
  1. criric

    criric Super Moderatore Membro dello Staff SUPER MOD MOD

    Registrato:
    21 Agosto 2010
    Messaggi:
    5.607
    Mi Piace Ricevuti:
    54
    Punteggio:
    48
    Sesso:
    Maschio
    Località:
    TN
    Ciao,

    io proverei con un ciclo tipo questo:

    Codice:
    <script type="text/javascript">
                
                function getSelected(select) {
                    return select.options[select.selectedIndex].value;
                }
                function selectValue() {               
                    var totale = 0;  
                    // al posto di 5 metterai il numero di select // occhio al nome          
                    for(var i = 1;i<5;i++) {
                        var somma = getSelected(document.getElementById("select" + i));
                        var totale = parseInt(totale) + parseInt(somma);
                    }
                    //alert(totale);
                    document.getElementById("txtRisultato").value = somma;
                }
                
            </script>
    guarda che non ho testato quindi probabilmente è da ritoccare ma sicuramente è piu ordinato
     
  2. Nefyt

    Nefyt Utente Attivo

    Registrato:
    17 Aprile 2012
    Messaggi:
    1.102
    Mi Piace Ricevuti:
    0
    Punteggio:
    0
    Allora sei sicuro che esistano tutti gli id che vengono ricavati?
     
  3. GI89

    GI89 Utente Attivo

    Registrato:
    21 Aprile 2012
    Messaggi:
    36
    Mi Piace Ricevuti:
    0
    Punteggio:
    0

    Sicuro.


    grazie criric,sempre gentilissimo,comunquel'id del totale è sempre <input type='text' size='25' value='' id='txtRisultato' /> giusto? Perchè in tal caso lo script non calcola(ho anche inserito i<17 perchè i select della somma sono 17) :crying: questa pagina mi sta facendo impazzire >.<
     
  4. GI89

    GI89 Utente Attivo

    Registrato:
    21 Aprile 2012
    Messaggi:
    36
    Mi Piace Ricevuti:
    0
    Punteggio:
    0
    Ho risolto utilizzando lo script precedente,ho dovuto modificare solo alcuni parametri nel javascript perchè non era compatibile con alcunhi browser,ecco perchè nell'anteprima funzionava e nel browser no
     
  5. criric

    criric Super Moderatore Membro dello Staff SUPER MOD MOD

    Registrato:
    21 Agosto 2010
    Messaggi:
    5.607
    Mi Piace Ricevuti:
    54
    Punteggio:
    48
    Sesso:
    Maschio
    Località:
    TN
    Prima di "select id='select11'" nel codice c'è un errore di sintassi HTML

    correggilo poi il ciclo funziona:

    Codice:
    <script type="text/javascript">
                
                function getSelected(select) {
                    return select.options[select.selectedIndex].value;
                }
                function selectValue() {               
                    var totale = 0;            
                    for(var i = 1;i<17;i++) {
                        // alert("select" + i + " " + document.getElementById("select" + i).value);
                        var somma = getSelected(document.getElementById("select" + i));
                        var totale = parseInt(totale) + parseInt(somma);
                    }
                    //alert(totale);
                    document.getElementById("txtRisultato").value = totale;
                }
                
            </script>
    EDIT : non avevo visto il tuo messaggio :)

    ho dimenticato di commentare un alert ( che mi è servito per trovare l'errore)
     
    Ultima modifica: 23 Aprile 2012
  6. GI89

    GI89 Utente Attivo

    Registrato:
    21 Aprile 2012
    Messaggi:
    36
    Mi Piace Ricevuti:
    0
    Punteggio:
    0
    Ho usato il metodo senza ciclo, pero' si scontra con l'altro risultato di contenuto 2.
    Nemmeno inserendo
    HTML:
    { document.getElementById("txtRisultato2").value = parseInt(document.getElementById("select18").value) + parseInt(document.getElementById("select19").value) + parseInt(document.getElementById("select20").value);
          }
    Mmmh :book:
     
  7. GI89

    GI89 Utente Attivo

    Registrato:
    21 Aprile 2012
    Messaggi:
    36
    Mi Piace Ricevuti:
    0
    Punteggio:
    0
    Che stupido XD ho risolto utilizzando la stessa funzione
     
Sto caricando...

Condividi questa Pagina