C'e' qualche imprecisione sui nomi dei campi...
ciaocodice:<html> <head> </head> <body> <form name="modulo" method="get" action=""> <table border="1"> <tr><td>Articolo</td><td>Immagine</td><td>Prezzo</td><td >Quantita'</td><td >Prezzo Totale</td></tr> <tr><td>Monitor</td> <td>[img]1.jpg[/img]</td> <td><input name="prezzo2" type="text" value="200.00" size="5" maxlength="5" readonly id="prezzo3"></td> <td><input type="text" size="4" name="articoli2" onChange="calcola2()";></td> <td><input name="tot2" type="text" value="0.00"></td> </tr> <tr><td>Album per foto</td> <td>[img]2.jpg[/img]</td> <td><input name="prezzo" type="text" value="20.00" size="5" maxlength="5" readonly id="prezzo1"></td> <td><input type="text" size="4" name="articoli1" onChange="calcola1()";></td> <td><input name="tot1" type="text" value="0.00"></td> </tr> <tr><td></td><td></td><td></td><td></td><td>Costo Totale:<input name="somma" type="text" value="0.00"></td></tr> </table> </form> </body> </html> <script language="javascript" type="text/javascript" > function cifre_decimali(x) { var c = String(Math.round(x*100)); while (c.length < 3) c = '0' + c; return c.replace(/([0-9][0-9])$/,".$1"); } function calcola1 () { //Prelevo il prezzo var prezzo = parseFloat(document.modulo.prezzo1.value); //Prelevo il numero articoli var articoli = parseFloat(document.modulo.articoli1.value); var calcola_somma1 = 0.00; //Calcolo la somma calcola_somma1 = Math.round(prezzo * articoli * 100)/100; //Scrivo la somma nel campo aggiungendo zero qual'ora non ci fossero document.modulo.tot1.value=cifre_decimali(calcola_somma1); tot() } function calcola2 () { //Prelevo il prezzo var prezzo = parseFloat(document.modulo.prezzo2.value); //Prelevo il numero articoli var articoli = parseFloat(document.modulo.articoli2.value); var calcola_somma2 = 0.00; //Calcolo la somma calcola_somma2 = Math.round(prezzo * articoli * 100)/100; //Scrivo la somma nel campo aggiungendo zero qual'ora non ci fossero document.modulo.tot2.value=cifre_decimali(calcola_somma2); tot() } function tot() { document.modulo.somma.value = cifre_decimali(parseFloat(document.modulo.tot1.value)+parseFloat(document.modulo.tot2.value)) } </script>