Foros del Web » Programando para Internet » Javascript »

no hace la funcion

Estas en el tema de no hace la funcion en el foro de Javascript en Foros del Web. Hola amigos estoy practicando con javascritp y no se porque no me funciona este script espero me puedan ayudar gracias. @import url("http://static.forosdelweb.com/clientscript/vbulletin_css/geshi.css"); Código Javascript : ...
  #1 (permalink)  
Antiguo 12/09/2012, 06:51
Avatar de fermin3d  
Fecha de Ingreso: octubre-2010
Ubicación: sevilla
Mensajes: 141
Antigüedad: 13 años, 6 meses
Puntos: 4
no hace la funcion

Hola amigos estoy practicando con javascritp y no se porque no me funciona este script espero me puedan ayudar gracias.

Código Javascript:
Ver original
  1. valor = document.getElementById("nombre").value;
  2. function validacion(){
  3. if ( valor == null || valor.length == 0 || /^\s+$/.test(valor) ){
  4.    
  5.    
  6.     alert('error');
  7.     return false;
  8.     }
  9. }
y el html
Código HTML:
Ver original
  1. <form action="enviar.php" method="" name="" onsubmit="return validacion()">
  2. <input type="text" name="nombre"  />
  3. <input type="submit" value="enviar" />
  4. </form>

Muchas gracias
  #2 (permalink)  
Antiguo 12/09/2012, 06:57
Avatar de maycolalvarez
Colaborador
 
Fecha de Ingreso: julio-2008
Ubicación: Caracas
Mensajes: 12.120
Antigüedad: 15 años, 9 meses
Puntos: 1532
Respuesta: no hace la funcion

1 - estás tratando de obtener el valor del input en el scope global, además de que en ese instante ni el DOM se ha cargado, por lo tanto no existe, y si detectaras eso solo tendrías el valor inicial, lo ideal es que lo obtengas dentro de la función que actúa como handler del evento

2 - use var para declarar variables explícitamente, la declaración implícita la soportan pocos navegadores

3 - usa getElementById cuando el elemento NO tiene el atributo ID
__________________
¡Por favor!: usa el highlight para mostrar código
El que busca, encuentra...
  #3 (permalink)  
Antiguo 12/09/2012, 09:13
Avatar de fermin3d  
Fecha de Ingreso: octubre-2010
Ubicación: sevilla
Mensajes: 141
Antigüedad: 13 años, 6 meses
Puntos: 4
Respuesta: no hace la funcion

es verda muchas gracias y tenia otra duda tengo este script

Código Javascript:
Ver original
  1. valor3 = document.getElementById("email").value;
  2. if ( !(/\w+([-+.']\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)/.test(valor3)) ){
  3.                        
  4.                         alert('Por favor, Escriba un Email correcto');
  5.                         return false;
  6.                        
  7.                     }
y siempre me da error no se si las expresiones regulares estab bien pero creo que si muchas gracias
  #4 (permalink)  
Antiguo 12/09/2012, 09:58
Avatar de KsrZ  
Fecha de Ingreso: abril-2011
Ubicación: /home/KsrZ/Desktop
Mensajes: 156
Antigüedad: 13 años
Puntos: 26
Respuesta: no hace la funcion

Hola @fermin3d, el problema es que \w tambien omite guion bajo _ y en ese caso, no le das un comienzo y un final a tu expresión, no estaria bien del todo utilizar guiones bajos en un comienzo, o final, mira aquí:
http://www.forosdelweb.com/f13/expreg-email-1012756/
__________________
for (var i = 0; i < 2; i++){
i = !confirm("Trata a tu código como a ti mismo.. este te esta representando.. no te dejes mal parado")? 0 : i;
}
  #5 (permalink)  
Antiguo 12/09/2012, 10:07
Avatar de fermin3d  
Fecha de Ingreso: octubre-2010
Ubicación: sevilla
Mensajes: 141
Antigüedad: 13 años, 6 meses
Puntos: 4
Respuesta: no hace la funcion

aahh es cierto Muchas gracias KsrZ

Etiquetas: funcion, html, input, php
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:42.