hola este es el javascript que suma y multiplica los array
Código Javascript
:
Ver originalfunction sumacampos()
{
//declaro variable que almacenara la suma total
var suma = 0;
//declaro variable que almacenara la multiplicacion total
var mult = 0;
var total=0;
//el "CampoaSumar" son los campos textBox que se sumaran
for(var i=0; i < document.tbl.CampoaSumar.length; i++)
{
//Comparo el id del campo en que me encuentro no lo sumo y sumar los demas
if(eval("document.getElementById('precio').id") != eval("document.tbl.CampoaSumar["+i+"].id") )
{
//Recorro el vector de los campos y realizo la suma
suma = suma + parseFloat(eval("document.tbl.CampoaSumar["+i+"].value"));
}
}
//Asigno la suma a un label que ira cambiando de acuerdo a la cantidad que se capture
document.getElementById('MiLabelTOTAL').innerHTML = suma;
for(var i=0; i< document.tbl.CampoaSumar.length; i++)
{
if(document.tbl.cantidad[i].value == ""){
this.document.tbl.cantidad[i].value = 0;
}
if(document.tbl.precio[i].value == ""){
this.document.tbl.precio[i].value = 0;
}
mult = parseFloat(eval("document.tbl.cantidad["+i+"].value")); //le asigno el valor de la cantidad
mult = mult * parseFloat(eval("document.tbl.precio["+i+"].value")); //hago la multiplicacion
document.tbl.total[i].value = mult; //llevo el total a al al input
total=total+mult;
this.document.getElementById('labelTOTAL').innerHTML = total;
}
}
debes de cambiar los nombres en estos tres asi
Código Javascript
:
Ver originalvar cell2 = row.insertCell(1);
var txtInp = document.createElement('input');
txtInp.setAttribute('type', 'text');
txtInp.setAttribute('name', "CampoaSumar");
txtInp.setAttribute('id', 'cantidad');
txtInp.setAttribute('onblur', "sumacampos();");
txtInp.setAttribute('size', '6');
cell2.appendChild(txtInp);
var cell3 = row.insertCell(2);
var txtInp = document.createElement('input');
txtInp.type = 'text'; // 6
txtInp.name = 'CampoaSumar'; // 6
txtInp.setAttribute('id', 'precio');
txtInp.setAttribute('onblur', "sumacampos();");
txtInp.size = 7;
txtInp.onkeyup = function(){addHiddenNeto(this.value)}
txtInp.onfocus = function(){setHiddenNeto(this.value)}
cell3.appendChild(txtInp);
var cell4 = row.insertCell(3);
var txtInp = document.createElement('input');
txtInp.setAttribute('type', 'text');
txtInp.setAttribute('name', "total");
txtInp.setAttribute('id', "total");
txtInp.setAttribute('size', '5');
cell4.appendChild(txtInp);
y en la tabla colocas algo como esto de abajo y te queda funcionando como tu lo quieres lo que pasa es que no te va a cargar desde el primer items sino desde el segundo estoy mirando como solucionarlo por que no me da espero y te sirva de algo jejeje te lo iba a dejar todo pero dice que es muy largo para colocarlo soy nuevo en este foro....es que se vio interesante hacerlo