Foros del Web » Programando para Internet » Javascript »

Suma de Text

Estas en el tema de Suma de Text en el foro de Javascript en Foros del Web. Tengo 6 cajas de "Text" text1, text2..... y tengo un "text7" llamado "Total" lo que quiero saber es como hacer la suma del valor que ...
  #1 (permalink)  
Antiguo 16/08/2005, 12:01
 
Fecha de Ingreso: junio-2005
Mensajes: 10
Antigüedad: 19 años, 3 meses
Puntos: 0
Suma de Text

Tengo 6 cajas de "Text" text1, text2..... y tengo un "text7" llamado "Total" lo que quiero saber es como hacer la suma del valor que pongan en los "text" del 1 al 6 y que me apresca el resultado en "Total"
  #2 (permalink)  
Antiguo 16/08/2005, 12:48
Avatar de crcbad  
Fecha de Ingreso: enero-2005
Mensajes: 302
Antigüedad: 19 años, 8 meses
Puntos: 0
Información

Es muy sencillito, suponiendo que tenemos un formulario llamado form1 con los 6 input donde se pueden introducir numeros, y otro más para el total, podemos usar el evento onKeyUp para que cuando se pulse una tecla de produzca directamente la suma, prueba esto, el formulario por ejemplo sería:

Código HTML:
<form name="form1" method="post" action="">
<input name="suma1" type="text" id="suma1" onKeyUp="HazSuma()" value="0"><br>
<input name="suma2" type="text" id="suma2" onKeyUp="HazSuma()" value="0"><br>
<input name="suma3" type="text" id="suma3" onKeyUp="HazSuma()" value="0"><br>
<input name="suma4" type="text" id="suma4" onKeyUp="HazSuma()" value="0"><br>
<input name="suma5" type="text" id="suma5" onKeyUp="HazSuma()" value="0"><br>
<input name="suma6" type="text" id="suma6" onKeyUp="HazSuma()" value="0"><br>
<input name="total" type="text" id="total">
</form> 

Y la función a la que llamamos quedará asi:

Código HTML:
 <script>
function HazSuma()
{
var cont = 0;
for(i=1;i<7;i++)
{
	cont = cont + parseInt(document.getElementById("suma"+i).value);
}
document.getElementById("total").value = cont;
}
</script> 

No lo he probado, pero seguro que funciona correctamente :) Comentame los resultados plis
__________________

:cool: [ http://eruben.sytes.net ] :cool:


Las dos frases que te ayudarán a salir adelante:
  • No hay mujer fea, solo copas de menos. :borracho:
  • Ante la duda, siempre coge la más tetuda. :arriba:

Última edición por crcbad; 16/08/2005 a las 13:11
  #3 (permalink)  
Antiguo 16/08/2005, 13:07
 
Fecha de Ingreso: junio-2005
Mensajes: 10
Antigüedad: 19 años, 3 meses
Puntos: 0
Cita:
Iniciado por crcbad
Es muy sencillito, suponiendo que tenemos un formulario llamado form1 con los 6 input donde se pueden introducir numeros, y otro más para el total, podemos usar el evento onKeyUp para que cuando se pulse una tecla de produzca directamente la suma, prueba esto, el formulario por ejemplo sería:

Código HTML:
<form name="form1" method="post" action="">
  <input name="suma1" type="text" id="suma1" onKeyUp="HazSuma()" value="0"><br>
  <input name="suma2" type="text" id="suma2" onKeyUp="HazSuma()" value="0"><br>
  <input name="suma3" type="text" id="suma3" onKeyUp="HazSuma()" value="0"><br>
  <input name="suma4" type="text" id="suma4" onKeyUp="HazSuma()" value="0"><br>
  <input name="suma5" type="text" id="suma5" onKeyUp="HazSuma()" value="0"><br>
  <input name="suma6" type="text" id="suma6" onKeyUp="HazSuma()" value="0"><br>
  <input name="total" type="text" id="total">
</form> 

Código HTML:
 Y la función a la que llamamos quedará asi: 
 
<script>
function HazSuma()
{
  var cont = 0;
  for(i=1;i<7;i++)
  {
	cont = cont + parseInt(document.getElementById("suma"+i).value);
  }
  document.getElementById("total").value = cont;
}
</script> 

No lo he probado, pero seguro que funciona correctamente :) Comentame los resultados plis
Perfectamente bien muchisimas gracias en serio
  #4 (permalink)  
Antiguo 16/08/2005, 13:13
Avatar de crcbad  
Fecha de Ingreso: enero-2005
Mensajes: 302
Antigüedad: 19 años, 8 meses
Puntos: 0
Ey! Me alegro que te haya funcionado ^_^

Si no te gusta que se haga así te puedes crear un botoncito, que en el evento onClick llame a esa función y así quitar de los 6 input la llama con el onKeyUp... A gusto del consumidos :P
__________________

:cool: [ http://eruben.sytes.net ] :cool:


Las dos frases que te ayudarán a salir adelante:
  • No hay mujer fea, solo copas de menos. :borracho:
  • Ante la duda, siempre coge la más tetuda. :arriba:
  #5 (permalink)  
Antiguo 18/08/2005, 13:59
 
Fecha de Ingreso: junio-2005
Mensajes: 10
Antigüedad: 19 años, 3 meses
Puntos: 0
Cita:
Iniciado por crcbad
Ey! Me alegro que te haya funcionado ^_^

Si no te gusta que se haga así te puedes crear un botoncito, que en el evento onClick llame a esa función y así quitar de los 6 input la llama con el onKeyUp... A gusto del consumidos :P
jajajaja ok muchisimas gracias, con eso esta bien... aunk no se si pudieras ayudarme para que apareciera en el "totla" el simbolo "$" y tambien si se pueden contar los decimales gracias!!!!!!!!!
  #6 (permalink)  
Antiguo 19/08/2005, 00:43
Avatar de crcbad  
Fecha de Ingreso: enero-2005
Mensajes: 302
Antigüedad: 19 años, 8 meses
Puntos: 0
Buenas de nuevo!! Sí, si que se puede hacer, en los input cambiamos el evento onKeyUp por onBlur, para trabajar mas comodamente quedando asi:

Código HTML:
<form name="form1" method="post" action="">
  <input name="suma1" type="text" id="suma1" onBlur="HazSuma()" value="0"><br>
  <input name="suma2" type="text" id="suma2" onBlur="HazSuma()" value="0"><br>
  <input name="suma3" type="text" id="suma3" onBlur="HazSuma()" value="0"><br>
  <input name="suma4" type="text" id="suma4" onBlur="HazSuma()" value="0"><br>
  <input name="suma5" type="text" id="suma5" onBlur="HazSuma()" value="0"><br>
  <input name="suma6" type="text" id="suma6" onBlur="HazSuma()" value="0"><br>
  <input name="total" type="text" id="total">
</form> 
La función la dejamos asi:

Código HTML:
function HazSuma()
{
  var cont = 0;
  var cad = "";
  for(i=1;i<7;i++)
  {
   cad = document.getElementById("suma"+i).value;
 
   cont = cont + parseFloat(cad.replace(",","."));
  }
  
  document.getElementById("total").value = cont + " $";
}
Es decir, ahora cualquier número con coma que pongamos lo sumará, aunque interiormente quitemos la coma y la pongamos un punto, ya que la aritmética de javascript es así, suma con puntos, y para lode dolar ya lo ves, es sencillo de poner :P

Espero que te ayude, comentame si todo va bien
__________________

:cool: [ http://eruben.sytes.net ] :cool:


Las dos frases que te ayudarán a salir adelante:
  • No hay mujer fea, solo copas de menos. :borracho:
  • Ante la duda, siempre coge la más tetuda. :arriba:
  #7 (permalink)  
Antiguo 19/08/2005, 13:24
 
Fecha de Ingreso: junio-2005
Mensajes: 10
Antigüedad: 19 años, 3 meses
Puntos: 0
Uorale jajaja muchisimas gracias cuate salio a la perfeccion a solo que en: document.getElementById("total").value = cont + " $"; el "$" va antes de cont jejeje = "$" + cont pero salio perfecto compa mil gracias t paso mi mail por cualquier cosa [email protected] cuidate
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 13:24.