Posted By

on 07/13/09


Tagged

javascript validation


Versions (?)

Validar que una variable sea numero y que sea mayor que 0 en Javascript


 / Published in: JavaScript
 

Una funcion sencilla en javascript para validar que introduscan valores enteros mayores que 0 en una caja de texto. Si se introduce flotantes, los convertirá a enteros. IMPORTANTE: Cada elemente necesita tener ID, sino no se remplazará los valores erronoes que el usuario ha introducido por espacios vacios.

  1. #HTML:
  2.  
  3.  
  4. <input type="text" name="cantidad[]" id="cantidad_'.$articulo.'" onchange="check_cantidad(this);">
  5.  
  6.  
  7.  
  8.  
  9.  
  10.  
  11.  
  12.  
  13.  
  14. #Javascript:
  15.  
  16.  
  17. function check_cantidad(element)
  18. {
  19. var cant = element.value;
  20. var cant_es_flotante = isFloat(cant);
  21. // alert('Valor introducido: '+cant+' \n\n ID: '+element.id+' | Es flotante? '+cant_es_flotante);
  22. // descomentar si quieres revisar los valores del id, value y si es flotante
  23.  
  24. if (isNaN(cant))
  25. {
  26. alert('Valor introducido: '+cant+' \n\n Introduce solo valores numericos');
  27. document.getElementById(element.id).value = "";
  28. }
  29. else if (cant < 1 )
  30. {
  31. alert('Valor introducido: '+cant+' \n\n Introduce numeros enteros mayores que 0');
  32. document.getElementById(element.id).value = "";
  33. }
  34. else if (cant_es_flotante == true)
  35. {
  36. alert('Valor introducido: '+cant+' \n\n El valor es decimal. Será convertido a entero.');
  37. cant = parseInt(cant);
  38. document.getElementById(element.id).value = cant;
  39. }
  40. }
  41. function isFloat(myNum)
  42. {
  43. // es true si es 1, osea si es flotante
  44. var myMod = myNum % 1;
  45.  
  46. if (myMod == 0)
  47. { return false; }
  48. else { return true; }
  49. }

Report this snippet  

You need to login to post a comment.