Asi es la estructura de tu tabla de sumas?
Código javascript
:
Ver original<form name="autoSumForm">
<table>
<tr><td><input type='text' name='cantidad[]' value='1' />+</td><td><input type='text' name='caja[]'/>=</td><td><input type='text' name='resultado[]' /></td></tr>
<tr><td><input type='text' name='cantidad[]' value='56' />+</td><td><input type='text' name='caja[]'/>=</td><td><input type='text' name='resultado[]' /></td></tr>
<tr><td><input type='text' name='cantidad[]' value='7' />+</td><td><input type='text' name='caja[]'/>=</td><td><input type='text' name='resultado[]' /></td></tr>
<tr><td><input type='text' name='cantidad[]' value='10' />+</td><td><input type='text' name='caja[]'/>=</td><td><input type='text' name='resultado[]' /></td></tr>
</table>
</form>
<script>
function Sumas(nombre_form){
var f = document.forms[nombre_form],T = f.getElementsByTagName('tr'),i=0,l=T.length,Sum,all,
S = function(Prim,Seg,Ter){
// Proceso de suma
Sum = function(){Ter.value = (parseInt(Prim.value,10) || 0) + (parseInt(Seg.value,10) || 0)}
Seg.onkeyup = Sum
Ter.onfocus = Sum
Ter.onblur = Sum
return !0
}, byName = function(T,name){
// Buscar atributo name
all = T.getElementsByTagName('*'),j=0
while(all[j].getAttribute('name') != name && j<all.length) j++
return all[j]
}
// Sumar al teclear, salir de la caja, seleccionar caja...
while(i<l && S(byName(T[i],'cantidad[]'), byName(T[i],'caja[]'), byName(T[i],'resultado[]'))) i++
}
Sumas('autoSumForm')
</script>
Si tienes alguna duda, avisame.