gracias por tus respuestas, mira, lo intenté así
Código Javascript
:
Ver originaldocument.addEventListener("DOMContentLoaded", function(){
calculo_imp("#total","#vrdescuento","#descuento","#totalD","#vriva","#iva","#vrretefuente","#retefuente","#vrica","#reteica","#totalG");
}, false);
ubicando los ids de las cajas al llamar la función, pero igual no funcionó.
la función la modifiqué así, y ahora no funciona jeje.
Código Javascript
:
Ver originalfunction calculo_imp(total1,vrdcto1,dcto1,totalD1,vriva1,iva1,vrretefuente1,retefuente1,vrica1,reteica1,totalG1){
var total = document.querySelector(total).value,
vrdcto1 = document.querySelector(vrdescuento).value,
dcto1 = document.querySelector(descuento).value,
totalD1 = document.querySelector(totalD).value,
vriva1 = document.querySelector(vriva).value,
iva1 = document.querySelector(iva).value,
vrretefuente1 = document.querySelector(vrretefuente).value,
retefuente1 = document.querySelector(retefuente).value,
vrica1 = document.querySelector(vrica).value,
reteica1 = document.querySelector(reteica).value,
totalG1 = document.querySelector(totalG).value;
if(total1==""){ total1.value=0; }
if(vrdcto1==""){ vrdcto1.value=0; }
if(dcto1==""){ dcto1.value=0; }
var Dcto = (parseFloat(total1)*parseFloat(vrdcto1))/100;
if(Dcto==''){ Dcto.value=0; }
dcto1.value=(Dcto).toFixed(2);
totalD1.value=(parseFloat(total1)-dcto1.value).toFixed(2);
if(totalD1==""){ totalD1.value=0; }
if(vriva1=="") { vriva1.value=0; }
if(iva1==""){ iva1.value=0; }
var iva2 =(totalD1.value*parseFloat(vriva1))/100;
iva1.value=(iva2).toFixed(2);
if(vrretefuente1==""){ vrretefuente1.value=0; }
if(retefuente1==""){ retefuente1.value=0; }
var retefuente2 =(totalD1.value*parseFloat(vrretefuente1))/100;
retefuente1.value = (retefuente2).toFixed(2);
if(vrica1=="") { vrica1.value=0; }
if(reteica1=="") { reteica1.value=0; }
reteica1.value=((totalD1.value*parseFloat(vrica1))/100).toFixed(2);
if(totalG1==""){ totalG1.value=0; }
totalG1.value=(parseFloat(totalD1.value)+parseFloat(iva1.value)-parseFloat(retefuente1.value)-parseFloat(reteica1.value)).toFixed(2);
}
Creo que mejor busco otra forma de hacerlo porque no supe como más hacerlo.