Ver Mensaje Individual
  #1 (permalink)  
Antiguo 13/01/2005, 14:56
bisteck
 
Fecha de Ingreso: septiembre-2003
Mensajes: 265
Antigüedad: 21 años, 7 meses
Puntos: 1
suma de textbox dinamicos

hola que tal.......................
tengo la siguiente problema necesito sumar cajas de textos de un formulario y mostrar el resultado en otra caja de texto, para eso tengo el siguiente codigo:

<html>
<head>
<title>Suma de valores en texbox</title>
</head>
<body>
<script>
function suma(){
var vtemp=0
vresult=0
for (var i=1;i<5;i++){ // hace un bucle para calcular todos los valores
vtemp=eval("parseFloat(document.all.box"+i+".value )")
if(!isNaN(vtemp)) vresult+=vtemp // si valor es número negativo, añadir
}
document.all.result.value=vresult // cambia el último valor...Resultado uno
}
</script>
<form>
<p>
<%
for i = 1 to 4
%>
Valor <%=i%>: <input name="box<%=i%>" onchange="suma()" size="20">
<br>
<%
next
%>
<br>
Suma total:<input name="result" size="20"> </p>
</form>
</body>
</html>

el cual funciona pero solo para 4 texbox, e tratado de hacerlo dinamicamente e modificado el codigo pero siempre tengo el mismo problema ya que no se como hacer pasar la variable a la funcion para que tome.

me explico
<html>
<head>
<title>Suma de valores en texbox</title>
</head>
<body>
<script>
function suma(){
var vtemp=0
vresult=0

"recibo la varible j y la guardo en aux"
"a la variable aux le sumo 1"
"pero mi problema es como recibo la varible j aqui"<----------------------

for (var i=1;i<aux;i++){ // hace un bucle para calcular todos los valores
vtemp=eval("parseFloat(document.all.box"+i+".value )")
if(!isNaN(vtemp)) vresult+=vtemp // si valor es número negativo, añadir
}
document.all.result.value=vresult // cambia el último valor...Resultado uno
}
</script>
<form>
<p>
<%
j = 4 <------imaginemos que el nº 4 lo ingreso el usuario
for i = 1 to j
%>
Valor <%=i%>: <input name="box<%=i%>" onchange="suma()" size="20">
<br>
<%
next
%>
<br>
Suma total:<input name="result" size="20"> </p>
</form>
</body>
</html>
** mi duda como paso la varible j a la funcion suma para que cuando haga el for en la funcion suma sea de 1 to "j" **