codice:
<script type="text/javascript">
/*mi serve per convertire la virgola in punto ed evitarmi il Nan*/
function virg2point(value){
value = value.replace(",",".");
return value;
}
//valori calcolo totali
var totale=0;
var inps=0;
var imponibile=0;
var iva=0;
var totalefattura=0;
var ritenuta=0;
var netto=0;
var perciva=<?echo $iva;?>;
var percritenuta=<?echo $ritenuta;?>;
var percinps=<?echo $inps;?>;
$(document).ready(function(){
/*mediante uno script catturo i dati da una subselezione di menu a tendina*/
$('#SubCat').change(function(event) {
var cosa=$('#SubCat').val();
//legge dal db e riempie i campi
//descrizione
$.ajax({
type: "GET",
url: "ajax_descrizione_p.php",
data: "nome="+cosa+"",
success: function(msg){
$('#codicet').val(msg);
}
});
//prezzo
$.ajax({
type: "GET",
url: "ajax_des2_p.php",
data: "nome="+cosa+"",
success: function(msg){
$('#descr').val(msg);
}
});
//prezzo
$.ajax({
type: "GET",
url: "ajax_prezzo_p.php",
data: "nome="+cosa+"",
success: function(msg){
$('#prezzo').val(msg);
}
});
//descrizione
$.ajax({
type: "GET",
url: "ajax_misura_p.php",
data: "nome="+cosa+"",
success: function(msg){
$('#misura').val(msg);
}
});
//iva
$.ajax({
type: "GET",
url: "ajax_iva_p.php",
data: "nome="+cosa+"",
success: function(msg){
$('#ivax').val(msg);
}
});
});
/*caricati i valori, li invio per l'inserimento nella lista*/
$('#invia').click(function() {
var valore=$('#codicet').val();
var valore2=$('#descr').val();
var valore3=$('#quantita').val();
var valore4=$('#prezzo').val();
var valore5=$('#sconto').val();
var valore6=$('#ivax').val();
var valore7=$('#misura').val();
var valore8=$('#ivax').val();
valore4= virg2point(valore4);
valore6= virg2point(valore6);
valore8= virg2point(valore8);
valore9=(valore4* valore6/100*valore3).toFixed(2);
var valore16=(valore4* valore6/100*valore3).roundTo(2);
var a=Math.round(100*Math.random())+300;
var valoreq=(parseFloat(valore4)*parseInt(valore3)).toFixed(2);
totale=parseFloat(totale)+(parseFloat(valore4)*parseInt(valore3));
$('#miatabella').append("<tr id=\"aaa"+a+"\"><td class=\"textDisplay1\"><input type=\"hidden\" name=\"riga"+a+"\" value=\""+valore+"|"+valore2+"|"+valore3+"|"+valore4+"|"+valore5+"|"+valore9+"|"+valore7+"|"+valore8+"|"+valoreq+"\">"+valore+"</td><td class=\"textDisplay1\">"+valore2+"</td><td class=\"textDisplay1\"><font size=6>"+valore3+"</font></td><td class=\"textDisplay1\"><font size=6>"+valore7+"</font></td><td class=\"textDisplay1\"><font size=6>"+valore9+"</font></td><td class=\"textDisplay1\"><font size=6>"+valore8+"</font></td><td class=\"textDisplay1\"><font size=6>"+valore4+"</font></td><td class=\"textDisplay1\"><font size=6>"+valoreq+"</font></td><td class=\"textDisplay1\"><a href=\"javascript:void(0);\" onclick=\"javascript:remove('aaa"+a+"','"+valore3+"','"+valore4+"','"+valore16+"')\">canc</a></td></tr>");
$('#ytotale').val(totale);
imponibile=totale;
$('#yimponibile').val(imponibile.toFixed(2));
iva=parseFloat(iva)+valore16;
$('#yiva').val(iva.toFixed(2));
totalefatt=iva+imponibile;
$('#yfattura').val(totalefatt.toFixed(2));
});
});
//rimuove singola riga
function remove(pippo,valore3,valore4,valore16) {
if(confirm('Sicuro?')){
//mod totale
totale=totale-(valore4*valore3);
$('#ytotale').val(totale);
imponibile=totale;
$('#yimponibile').val(imponibile.toFixed(2));
iva=iva-valore16;
$('#yiva').val(iva.toFixed(2));
totalefatt=iva+imponibile;
$('#yfattura').val(totalefatt.toFixed(2));
$('#'+pippo).remove();
//fa effetto rosso
$('#'+pippo).addClass('red');
//chiude
$('#'+pippo).fadeOut('slow');
}
}
//arrotonda a decimalpositions cifre decimali
function roundTo(decimalpositions)
{
var i = this * Math.pow(10,decimalpositions);
i = Math.round(i);
return i / Math.pow(10,decimalpositions);
}
Number.prototype.roundTo = roundTo;
/*
var x = 3.14159;
alert( x.roundTo(2) ); // 3.14
alert( x.roundTo(4) ); // 3.1416
*/
</script>
ho notato ke l'errore appare anche in fase di cancellazione... rimuove gli oggetti dall'array, ma i dati rimangono memorizzati