Foros del Web » Programando para Internet » Javascript »

isNaN()

Estas en el tema de isNaN() en el foro de Javascript en Foros del Web. Hola que tal! tengo la duda de donde poner la funcion isNaN() , ya que a la hora de obtener mi resultado en mi campo ...
  #1 (permalink)  
Antiguo 05/07/2011, 23:59
Avatar de totti026  
Fecha de Ingreso: junio-2011
Mensajes: 150
Antigüedad: 12 años, 10 meses
Puntos: 4
Pregunta isNaN()

Hola que tal! tengo la duda de donde poner la funcion isNaN(), ya que a la hora de obtener mi resultado en mi campo "total" me aparece esto: NaN

y este es mi script:

Código Javascript:
Ver original
  1. <script>
  2. var total=0;
  3. function comprobarChecks()
  4. {
  5. var checks = document.getElementsByTagName("input"); //recojo todos los input
  6. for(i=0;i<checks.length;i++)
  7. {
  8. if(checks[i].type=="checkbox") //solo contemplo los de tipo checkbox
  9. {
  10. if(checks[i].checked) //si esta checkado agrego a total su valor
  11. total += parseFloat(checks[i].value);
  12. }
  13. }
  14. }
  15. function sumar(valor) {
  16. total += valor;
  17. document.formulario.total.value=total;
  18. }
  19. function restar(valor) {
  20. total-=valor;
  21. document.formulario.total.value=total;
  22. }
  23. </script>

o como le podria hacer para obtener el valor de un campo ya guardado en la BD y hacer que sea el valor inicial, osea que en la linea 2 del script: var total=0; en vez de 0 sea el valor del campo.
Gracias Masters.

Última edición por totti026; 06/07/2011 a las 00:19
  #2 (permalink)  
Antiguo 06/07/2011, 00:36
Avatar de ceSharp  
Fecha de Ingreso: octubre-2008
Ubicación: Madrid
Mensajes: 495
Antigüedad: 15 años, 5 meses
Puntos: 66
Respuesta: isNaN()

hola totti,

la función isNaN se mete dentro de un IF, para saber si es número o no:

if(isNaN(numero)) --> si la variable num no es numérico se cumple la función (isNaN = is Not A Number)

en tu caso deberías de comprobar antes de sumar/restar en tus funciones de suma y resta, en la comprobación inicial de los checks marcados:
----

...
if(!isNaN(valor)) //con la admiración busco lo contrario, que si isNaN es true
total += valor;
....

-------------------

saludos.
  #3 (permalink)  
Antiguo 06/07/2011, 00:41
Avatar de ceSharp  
Fecha de Ingreso: octubre-2008
Ubicación: Madrid
Mensajes: 495
Antigüedad: 15 años, 5 meses
Puntos: 66
Respuesta: isNaN()

... ahora que me leo, lo mismo te he liado demasiado con la dichosa función, jejejeje. Si te lías, aplica este ejemplo en tu página, y te sacará de dudas:
----------------------
function comprobar_numerico(num)
{
if(isNaN(num))
alert('no es numérico');

if(!isNaN(num))
alert('es numérico');
}
------------------------------

saludos.

Etiquetas: checkbox, formulario
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 20:08.