Ver Mensaje Individual
  #2 (permalink)  
Antiguo 16/05/2012, 23:33
Avatar de emprear
emprear
Colaborador
 
Fecha de Ingreso: junio-2007
Ubicación: me mudé
Mensajes: 8.388
Antigüedad: 16 años, 10 meses
Puntos: 1567
Respuesta: Validar campos(no me valida la edad)

En primer lugar tenes algunos errores en la script
En la linea 16 haces una comparación pero te falta el 2º elemento
if (edad==){
además esa comparación no tiene mayor sentido, ya que con la función validaEntero() ya tenés resuelto eso
En la linea 48, tenes una comilla invertida extraña.
Ahora, te simplifico la función para chequear que es un numero

Código Javascript:
Ver original
  1. function validarEntero(input){
  2. return !isNaN(input)&&parseInt(input)==input;
  3. }

El código completo quedaría asi

Código HTML:
Ver original
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
  2.    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  3. <html xmlns="http://www.w3.org/1999/xhtml">
  4. <meta http-equiv="content-type" content="text/html; charset=utf-8" />
  5. <title>iiiii</title>
  6. <script type="text/javascript">
  7. //<![CDATA[
  8. function valida_envia(){
  9.      //valido el nombre
  10.      if (document.fvalida.nombre.value.length==0){
  11.             alert("Tiene que escribir su nombre")
  12.             document.fvalida.nombre.focus()
  13.             return 0;
  14.      }
  15.  
  16.      //valido la edad. tiene que ser entero mayor que 18
  17.  
  18. var edad = document.fvalida.edad.value  
  19. if(validarEntero(edad)){
  20.  
  21. if(edad < 18){
  22. alert("Debe ser mayor de 18 años.") ;
  23. document.fvalida.edad.focus();
  24. return false;
  25. }
  26.  
  27. } else{
  28. alert("Debe ingresar un número");
  29. document.fvalida.edad.focus();
  30. return false;
  31. }
  32.  
  33.      //valido el interés
  34.      if (document.fvalida.interes.selectedIndex==0){
  35.             alert("Debe seleccionar un motivo de su contacto.")
  36.             document.fvalida.interes.focus()
  37.             return 0;
  38.      }
  39.  
  40.      //el formulario se envia
  41.      alert("Muchas gracias por enviar el formulario");
  42.      document.fvalida.submit();
  43. }
  44.  
  45.  
  46. function validarEntero(input){
  47. return !isNaN(input)&&parseInt(input)==input;
  48. }
  49. //]]>
  50.  
  51. </head>
  52. <form name="fvalida" id="fvalida">
  53. <tr>
  54. <td>Nombre:</td>
  55. <td><input type="text" name="nombre" size="30" maxlength="100" /></td>
  56. </tr>
  57.  
  58. <tr>
  59. <td>Edad:</td>
  60. <td><input type="text" name="edad" size="3" maxlength="2" /></td>
  61. </tr>
  62. <tr>
  63. <td>Interés:</td>
  64. <td><select name="interes">
  65. <option value="Elegir">Elegir</option>
  66. <option value="Comercial">Contacto comercial</option>
  67. <option value="Clientes">Atención al cliente</option>
  68. <option value="Proveedores">Contacto de proveedores</option>
  69.  
  70. </select></td>
  71. </tr>
  72. <tr>
  73. <td colspan="2" align="center"><input type="button" value="Enviar" onclick="valida_envia()" /></td>
  74. </tr>
  75. </form>
  76. </body>
  77. </html>

Saludos
__________________
La voz de las antenas va, sustituyendo a Dios.
Cuando finalice la mutación, nueva edad media habrá
S.R.