C'era un errore nel codice che ti avevo scritto, fai una prova cosi:
codice:function calcola(el1,el2) { var decimal = ""; var prez_e = el1.value; prez_e = prez_e.replace(/\,/, "."); if(prez_e.indexOf(".") != -1){ decimal = prez_e.split("."); decimal = decimal[1].length; } var prez = parseFloat(prez_e); var scon = parseFloat(el2.value); var net = String(Math.round((prez - prez*scon/100) *100) / 100); if(!isNaN(net)){ document.carrello.totalescontato.value = new Number(net).toFixed(decimal); } }