Foros del Web » Programando para Internet » Javascript »

suma con input text y checkbox, AYUDA

Estas en el tema de suma con input text y checkbox, AYUDA en el foro de Javascript en Foros del Web. Hola a todos, pff quee pena molestar nuevamente pero me han solicitado una funcion de esas raras para hacer un a suma que ya tenia ...
  #1 (permalink)  
Antiguo 20/10/2009, 16:25
Avatar de tampon  
Fecha de Ingreso: julio-2009
Mensajes: 420
Antigüedad: 14 años, 9 meses
Puntos: 0
Pregunta suma con input text y checkbox, AYUDA

Hola a todos, pff quee pena molestar nuevamente pero me han solicitado una funcion de esas raras para hacer un a suma que ya tenia funcionando pero ahora con un imput tipo texto, bueno aqui esta el codigo.

Código html:
Ver original
  1.  
  2. <script language="JavaScript">
  3.  
  4. function Suma2(isChecked, myValue){
  5.     myValue=myValue.replace(",","");
  6.     var total=0;
  7.     tot = parseFloat(document.sumar2.total2.value);
  8.     myValue = parseFloat(myValue);
  9.  
  10.     if (isChecked)
  11.         total = tot + myValue;
  12.     else
  13.         total = tot - myValue;
  14.     document.sumar2.total2.value = total.toFixed(2);
  15. }
  16.  
  17.  
  18.  
  19. <form name="sumar2" method="POST">
  20.  
  21.     <p><input type="text" value="" name="Check1" onkeyup="Suma2(this.checked,this.value)"  /></p>
  22.     <p><input type="checkbox" value="63.50" name="Check2" onClick="Suma2(this.checked,this.value)" >$63.50</p>
  23.     <p><input type="checkbox" value="50.00" name="Check3" onClick="Suma2(this.checked,this.value)" >$50.00</p>
  24.     <p><b><font color="#999999">$</font></b> <input id="pago" class="resultado" type="text" name="total2" value="0" disabled></p>
  25.  
  26. </form>
  27.  
  28. </body></html>

El problema que tengo es que al momento de meter una cantidad al input text, me aparece un numero negativo con cantidad distinta, la suma de los checkbox funciona bien pero con este nuevo campo tambien se vuelve loco y me hace la suma con numeros negativos, como arreglo esto?

Saludos!
  #2 (permalink)  
Antiguo 20/10/2009, 17:11
Avatar de zerokilled
Javascripter
 
Fecha de Ingreso: abril-2009
Ubicación: Isla del Encanto, La Borinqueña [+>==]
Mensajes: 8.050
Antigüedad: 15 años
Puntos: 1485
Respuesta: suma con input text y checkbox, AYUDA

el problema lo tienes en el primer parametro de la funcion Suam2 del INPUT text. la propiedad checked, aunque existe, realmente no tiene efecto sobre un input text por lo que, imagino yo, siempre devuelve false. simplemente cambia el primer parametro por el boolean true.

por otro lado, tienes otro error. luego de escribir una cifra y vacias el campo, el resultado se vuelve NaN. te lo dejare para que lo arregles.
__________________
la maldad es una virtud humana,
y la espiritualidad es la lucha del hombre contra su maldad.
  #3 (permalink)  
Antiguo 21/10/2009, 08:27
Avatar de tampon  
Fecha de Ingreso: julio-2009
Mensajes: 420
Antigüedad: 14 años, 9 meses
Puntos: 0
Respuesta: suma con input text y checkbox, AYUDA

Hola zerokilled si esos detalles ya los había visto como mencionas el checked lo deje por que aun no encontré una solución, si dejaba solo this.value no me devolvía ningún resultado y si después de introducir una cantidad y la retiro si me devuelve NAN, esos también son problemas.


Alguna otra opción?
  #4 (permalink)  
Antiguo 21/10/2009, 08:41
Avatar de zerokilled
Javascripter
 
Fecha de Ingreso: abril-2009
Ubicación: Isla del Encanto, La Borinqueña [+>==]
Mensajes: 8.050
Antigüedad: 15 años
Puntos: 1485
Respuesta: suma con input text y checkbox, AYUDA

¿ya cambiastes el parametro por true como te comente?
__________________
la maldad es una virtud humana,
y la espiritualidad es la lucha del hombre contra su maldad.
  #5 (permalink)  
Antiguo 21/10/2009, 08:50
Avatar de tampon  
Fecha de Ingreso: julio-2009
Mensajes: 420
Antigüedad: 14 años, 9 meses
Puntos: 0
Respuesta: suma con input text y checkbox, AYUDA

Si ya lo cambie, no me manda un numero negativo, pero si escrbo 50 me da 55 y si lo borro me vuelve el NAN.
  #6 (permalink)  
Antiguo 21/10/2009, 09:27
Avatar de zerokilled
Javascripter
 
Fecha de Ingreso: abril-2009
Ubicación: Isla del Encanto, La Borinqueña [+>==]
Mensajes: 8.050
Antigüedad: 15 años
Puntos: 1485
Respuesta: suma con input text y checkbox, AYUDA

no me habia fijado en ese detalle, y tiene sentido. cada vez que se pulsa una tecla la funcion es invocada, por lo que cada invocacion se considera un nuevo numero. o sea, la primera vez presionas 5 y es agregado al total. la segunda vez presionas 0, la nueva cifra ahora es 50 pero este es sumado al total actual, o sea, 50 + 5 = 55. tienes que rehacer tu algoritmo. yo prefiero olvidarme del campo que retiene el total y recomputar todo en cada invocacion para evitar ese problema. es decir, leer el campo texto mas verificar cuales checkbox estan activos para entonces decidir cuales numeros sumar.

acerca de NaN, este siempre te va aparecer cuando el campo texto este vacio o contenga un valor no numerico, por lo que tienes que validar la entrada antes de proceder a calcular los valores.
__________________
la maldad es una virtud humana,
y la espiritualidad es la lucha del hombre contra su maldad.
  #7 (permalink)  
Antiguo 21/10/2009, 09:38
Avatar de tampon  
Fecha de Ingreso: julio-2009
Mensajes: 420
Antigüedad: 14 años, 9 meses
Puntos: 0
Respuesta: suma con input text y checkbox, AYUDA

Ok, gracias por el aporte, voy a intentarlo rehacer.


Saludos.
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 05:36.