tengo el siguiente inconveniente, tengo una par de funciones que recorren un formulario sumando los valores que tiene los inputs de un formulario, estos valores al principio eran de este estilo:
1,50
1 500,60
22,99
todo andaba de maravilla, hasta que me pidieron que estos valores tenga el formarto:
1.50
1.500,60
22.99
y todo dejo de funcionarme y no entiendo porque :(
las funciones son estas:
Código Javascript:
Ver original
function calcular_total(){ console.log('entro a calcular total'); var total = 0; var subtotal = parseFloat($("#sub").text()); //subtotal = subtotal.replace(",","."); console.log('subtotal: '+subtotal); var desc = $("#descuento_gral").val(); console.log('descuento: '+desc); if ($.isNumeric(desc)){ total = subtotal - (desc * subtotal) / 100; console.log('total: '+total); total = parseFloat(total).toFixed(2); console.log('entro: '+parseFloat(total).toFixed(2)); $("#total").html(total); $("#total_h").val(total); } else{ subtotal = parseFloat(subtotal).toFixed(2); console.log('no entro: '+parseFloat(subtotal).toFixed(2)); $("#total").html(subtotal); $("#total_h").val(subtotal); } } function calcular_subtotal(){ console.log('subtotal'); var importe_subtotal = 0; var precio; $('.ui-sortable tr').each( function(index, value) { console.log("item: "+ $(this).find('input').eq(7).val()); precio = $(this).find('input').eq(7).val(); importe_subtotal = importe_subtotal + parseFloat(precio); } ); importe_subtotal = parseFloat(importe_subtotal).toFixed(2); console.log('sub: '+importe_subtotal); $("#sub").html(importe_subtotal); $("#sub_h").val(importe_subtotal); }
y la consola me devuelve:
Cita:
porque con el nuevo formato no me deja sumar los valores?subtotal
item: 1.500,00
item: undefined
sub: NaN
entro a calcular total
subtotal: NaN
descuento:
no entro: NaN
item: 1.500,00
item: undefined
sub: NaN
entro a calcular total
subtotal: NaN
descuento:
no entro: NaN
intente cambiar los puntos por comas con replace pero me tira este error:
Cita:
estoy muy deconcertado con esto, alguien que me pueda dar una mano....Uncaught TypeError: Cannot call method 'replace' of undefined
desde ya muchas gracais