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

    sommare campo testo con checbox

    ciao a tutti sapete dirmi dove sbaglio vorresi con un ceckbox sommare il valore di un campo di testo:

    <script type="text/javascript">
    function somma(ff) {
    var somma = 0;
    for(var i=0; i<ff.elements.length; i++) {
    if(ff.elements[i].type == 'checkbox') {
    var cc = ff.elements[i];
    if(cc.checked) somma += parseFloat(form1.dasommare.value);
    }
    }
    ff.tot.value = somma;
    }
    </script>
    Immagini allegate Immagini allegate

  2. #2
    raga nessuno per cortesia sa aiutarmi... grazie

  3. #3
    Utente bannato
    Registrato dal
    Dec 2008
    Messaggi
    78
    Ho esperito che checked nella condizionale di un if statement, vuole checked=="checked"
    quindi prova:

    if(cc.checked=="checked") somma += parseFloat(form1.dasommare.value);

    o magari anche:

    if(cc.checked==true) somma += parseFloat(form1.dasommare.value);

  4. #4
    con checked mi continua a dare 0
    con true mi da NaN

    @)

  5. #5
    Utente bannato
    Registrato dal
    Dec 2008
    Messaggi
    78
    Sei sicuro che parseFloat() trovi il form nel body?
    E dasommare cos'é? Il campo di testo, non credo.
    Fai attenzione che NAME non è abbinabile a tutti gli Elementi come è ID; specialmente con IExplorer che non lo prevede neanche per DIV e SPAN
    Ma siccome c'è value, allora lì non è il caso: sarà un INPUT, ok NAME va bene; ma saranno mica tanti INPUT checkbox con NAME="dasommare" ? Allora bisogna dirgli qual è.
    Se puoi aggiungere un po' più di codice, più tardi ci darei un'occhiata.

  6. #6

  7. #7
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    Ci sono errori di sintassi non puoi avere 8 id "sommare" e 8 id "controllo", probabilmente li crei dinamicamente con asp, se aggiungi una variabile al ciclo che s'incrementa di volta in volta avrai controllo_1 - sommare_1, controllo_2 - sommare_2, etc....
    Poi se vuoi sommare il valore del controllo col valore di sommare devi passare quest'ultimo alla funzione somma(this.value,<%=valore_input_text%>)
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  8. #8
    non ho ben capito cosa devo fare

  9. #9
    ho fatto un casino. scommetto solo che non so quasi nulla di javascript.

    <script type="text/javascript">

    function somma(ff) {
    var somma = 0;
    for(var i=0; i<ff.elements.length; i++) {
    if(ff.elements[i].type == 'checkbox') {
    var cc = ff.elements[i];
    if(cc.checked) somma += (this.value.<%=dasommare%> );
    }
    }
    ff.tot.value = somma;
    }


    </script>

  10. #10
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    Originariamente inviato da oucharri
    ho fatto un casino. scommetto solo che non so quasi nulla di javascript.
    ....
    Come tutti i linguaggi, lameno le base si debbono avere, andare per tentativi senza sapere cosa si sta facendo perdi solo tempo.
    Pertanto ho ti documenti qui (guida base) oppure attendi che qualcuno capisca cosa vuoi fare e te lo faccia.
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

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.