Hola a todos, antes que nada les quiero agradecer la enorme utilidad que brinda la comunidad, estoy empezando a programar y realmente muchas respuestas de acá me sirven para aprender de mis errores.
Lamentablemente leyendo de todos lados e incluso en este foro no encuentro la solución a un problema de un Javascript que tengo y que sirve para hacer algo asi como un pedido y que te vaya mostrando Subtotal y Total.
Paso a comentarles:
Código HTML:
<script type="text/javascript">
function Sumar(){
interval = setInterval("calcula()",1);
}
function calcula(){
var vcantidad=document.getElementsByName('cantidad[]');
var vprecio_u=document.getElementsByName('precio[]');
var vrubro=document.getElementsByName('rubro[]');
var subtotal=0;
var totalidad=0;
i=0;
for (var obj in document.getElementsByName('total_p[]')){
if (i<document.getElementsByName('cantidad[]').length){
document.getElementsByName('total_p[]')[i].value=parseFloat(vcantidad[i].value)*parseFloat(vprecio_u[i].value)*1.07+parseInt(vrubro[i].value)*parseFloat(vcantidad[i].value);
subtotal+=parseFloat(vcantidad[i].value)*parseFloat(vprecio_u[i].value);
totalidad=parseFloat(vcantidad[i].value)*parseFloat(vprecio_u[i].value)*1.07+parseFloat(vcantidad[i].value)*parseFloat(vrubro[i].value);
}
i++;
}
document.autoSumForm.Total.value = (parseFloat(totalidad) * 1);
document.autoSumForm.subtot.value = (subtotal * 1.07);
document.autoSumForm.Adelanto.value = (parseFloat(document.autoSumForm.Total.value) * 0.2);
}
</script>
Lo que hace esto es que cuando colocas en el campo cantidad y precio un numero, los multiplica, da un subtotal con un 7% de interés y además toma el valor de un Select llamado Rubro que le adiciona a ese subtotal X precio + la cantidad de productos que haya elegido.
Un ejemplo:
2 en cantidad
100 en precio
Subtotal va a dar: 214 (es 100 x 2 + 7%)
Luego tenes un Select con varias opciones que según la que le elijas, le suma cantidad de productos elegidos + el value.
Por ejemplo:
Select value: 10
Total va a dar: 214 + (10 value * 2 cantidad) = 234 y lo tira en otro campo llamado Total en el mismo IF.
El tema es cuando quiero tener un campo que vaya mostrando el Total GENERAL y no de cada producto, ahi saliendo del IF el valor de rubro[i].value me dice que es NaN y haga lo que haga el resultado me sigue tirando que es NaN.
Espero puedan ayudarme!
Un abrazo,
Matias.