Hola! saludos!
Mi duda es la siguiente, tengo el siguiente código en el cual al subtotal le calculo el iva y el resultado lo muestra en un input llamado total. Todo lo hace automáticamente ya que uso, el ONKEYUP. El problema es cuando intento calcular también la retefuente(la cual el subtotal debe ser mayor a 745000) y el reteica, no me hace las operaciones que corresponden a éstos dos campos.
function calcular(id,total,NombreCampo){
var suma = parseFloat(eval("document.getElementById('"+id+"').value"));
var total = document.getElementById(total);
for(var i=0; i < eval("document.frmVentas."+NombreCampo+".length"); i++) {
if(eval("document.getElementById('"+id+"').id") != eval("document.frmVentas."+NombreCampo+"["+i+"].id") )
{
suma = suma * (parseFloat(eval("document.frmVentas."+NombreCampo+"["+i+"].value"))/100) + (parseFloat(eval("document.frmVentas."+NombreCampo+"["+i+"].value")));
var res= suma-suma2
}
total.value = res;
}
}
Éste es parte de mi formulario:
<div class="form-group">
<label>Subtotal</label>
<input name="calculo2" id="subtotal" value="0.0" readOnly="true" class="form-control" onkeyup="calcular('iva','total','calculo2');" >
</div>
<div class="form-group">
<label>IVA</label>
<input name="calculo2" id="iva" class="form-control" readOnly="true" onkeyup="calcular('iva','total','calculo2');" required>
</div>
<div class="form-group">
<label>Retefuente</label>
<input name="calculo2" id="rete" class="form-control" onkeyup="calcular('rete','total','calculo2');">
</div>
AYUDA, POR FAVOR!! ES URGENTE! javascript no se me da muy bien.
Mi duda es la siguiente, tengo el siguiente código en el cual al subtotal le calculo el iva y el resultado lo muestra en un input llamado total. Todo lo hace automáticamente ya que uso, el ONKEYUP. El problema es cuando intento calcular también la retefuente(la cual el subtotal debe ser mayor a 745000) y el reteica, no me hace las operaciones que corresponden a éstos dos campos.
function calcular(id,total,NombreCampo){
var suma = parseFloat(eval("document.getElementById('"+id+"').value"));
var total = document.getElementById(total);
for(var i=0; i < eval("document.frmVentas."+NombreCampo+".length"); i++) {
if(eval("document.getElementById('"+id+"').id") != eval("document.frmVentas."+NombreCampo+"["+i+"].id") )
{
suma = suma * (parseFloat(eval("document.frmVentas."+NombreCampo+"["+i+"].value"))/100) + (parseFloat(eval("document.frmVentas."+NombreCampo+"["+i+"].value")));
var res= suma-suma2
}
total.value = res;
}
}
Éste es parte de mi formulario:
<div class="form-group">
<label>Subtotal</label>
<input name="calculo2" id="subtotal" value="0.0" readOnly="true" class="form-control" onkeyup="calcular('iva','total','calculo2');" >
</div>
<div class="form-group">
<label>IVA</label>
<input name="calculo2" id="iva" class="form-control" readOnly="true" onkeyup="calcular('iva','total','calculo2');" required>
</div>
<div class="form-group">
<label>Retefuente</label>
<input name="calculo2" id="rete" class="form-control" onkeyup="calcular('rete','total','calculo2');">
</div>
AYUDA, POR FAVOR!! ES URGENTE! javascript no se me da muy bien.