Ciao a tutti!
in un form ho diverse text con degli importi, per ogni text ho associato al comando onkeyup una funzione js "somma" e gli passo tutti i valori delle text che mi servono
codice:<tr><td>Capitale</td><td><input type="text" id="capitale" name="capitale" style="width:100px;" value="0" onkeyup="javascript:somma(document.f1.capitale.value,document.f1.interessi.value,document.f1.penale.value,document.f1.spese_legali.value)"></td> <td>Interessi</td><td><input type="text" id="interessi" name="interessi" style="width:100px;" value="0" onkeyup="javascript:somma(document.f1.capitale.value,document.f1.interessi.value,document.f1.penale.value,document.f1.spese_legali.value)"></td> <td>Penale</td><td colspan="3"><input type="text" id="penale" name="penale" style="width:100px;" value="0" onkeyup="javascript:somma(document.f1.capitale.value,document.f1.interessi.value,document.f1.penale.value,document.f1.spese_legali.value)"></td> </tr> <tr><td>Penale Decoder</td><td><input type="text" id="penale_decoder" name="penale_decoder" style="width:100px;" value="0"></td> <td>Spese Legali</td><td><input type="text" id="spese_legali" name="spese_legali" style="width:100px;" value="0" onkeyup="javascript:somma(document.f1.capitale.value,document.f1.interessi.value,document.f1.penale.value,document.f1.spese_legali.value)"></td> <td>Totali</td><td colspan="3"><input type="text" id="tot" name="tot" style="width:100px;" value="0"></td></tr>
Nella funzione somma ho scritto
dove mi calcola il totale e lo scrive dentro la text tot.codice:function somma(af,bf,cf,df){ var a=eval(af); var b=eval(bf); var c=eval(cf); var d=eval(df); tot=a+b+c+d; document.f1.tot.value=eval(tot); }
Il mio problema è che se ad un campo inserisco un decimale (con il punto e non con la virgola), la somma è diversa; ESEMPIO: capitale= 20.52 il totale è 20.5199999999999
come posso risolvere?
Grazie!
Ciao

Rispondi quotando