Foros del Web » Programando para Internet » Javascript »

faq 63 con parametros...?

Estas en el tema de faq 63 con parametros...? en el foro de Javascript en Foros del Web. Hola foro... Viendo las faq's trate por buen tiempo pero no pude hacer una funcion que me capture la tecla pulsada y que a la ...
  #1 (permalink)  
Antiguo 30/08/2008, 12:13
Avatar de killerangel  
Fecha de Ingreso: septiembre-2007
Ubicación: Un punto en el espacio
Mensajes: 592
Antigüedad: 16 años, 7 meses
Puntos: 10
faq 63 con parametros...?

Hola foro...

Viendo las faq's trate por buen tiempo pero no pude hacer una funcion que me capture la tecla pulsada y que a la vez acepte parametros que le indique que caracteres aceptar y cuales no

Código:
function caracteres(numeros,minusculas,mayusculas,aceptar,rechazar){
 //numero= mayusculas=minusculas=booleano
 if(numeros){
  //aceptar numeros 57>keyascii>48
 }
 if(minusculas){
  //...obvio... 97>keyascii>122
 }
 if(mayusculas){
  //...lomismo... 90>keyascii>65
 }
 //aceptar=array con caracteres especiales q se pueden aceptar
 if(aceptar){
  for(...[0]){
   //keyascii para cada valor...
  }
 }
 //rechazar=array con letras y/o numeros no permitidos o exceptuados
 if(rechazar){
  for(...[0]){
   //keyascii para cada valor...
  }
 }
}

<input type="text" onkeypress="caracteres(1,0,1,{'Ñ','*','$'},{'0','W'})" />
tal vez hay una manera más fácil de declarar la funcion (se q para ustedes la hay) pero es q con lo poco q se de js no puedo ver otra solo q di vuelta en circulos y me confundí ojalá me den una manito.

gracias!!!
__________________
Sueñen... y trabajen por hacer esos sueños realidad... de eso se construye el futuro!!
Me siento entre la ASP-ada y la PHP-red
  #2 (permalink)  
Antiguo 30/08/2008, 13:12
Avatar de Adler
Colaborador
 
Fecha de Ingreso: diciembre-2006
Mensajes: 4.671
Antigüedad: 17 años, 4 meses
Puntos: 126
Respuesta: faq 63 con parametros...?

Hola

Mira este código del estimado JavierB

Suerte
__________________
Los formularios se envían/validan con un botón Submit
<input type="submit" value="Enviar" style="background-color:#0B5795; font:bold 10px verdana; color:#FFF;" />
  #3 (permalink)  
Antiguo 30/08/2008, 15:23
Avatar de killerangel  
Fecha de Ingreso: septiembre-2007
Ubicación: Un punto en el espacio
Mensajes: 592
Antigüedad: 16 años, 7 meses
Puntos: 10
Respuesta: faq 63 con parametros...?

Interesante, pero no se como hacer para q al pasarle parametros me tome un parametro como evento y los demas como parametros que ingreso, es decir creo q habría conflictos. Por otro lado me interesa hacer la validacion de acuerdo a los parametros y no en base a una expresion regular ya dada.

gracias!
__________________
Sueñen... y trabajen por hacer esos sueños realidad... de eso se construye el futuro!!
Me siento entre la ASP-ada y la PHP-red
  #4 (permalink)  
Antiguo 30/08/2008, 15:47
Avatar de derkenuke
Colaborador
 
Fecha de Ingreso: octubre-2003
Ubicación: self.location.href
Mensajes: 2.665
Antigüedad: 20 años, 6 meses
Puntos: 45
Respuesta: faq 63 con parametros...?

Hola killerangel:

Basándome en el ejemplo de javierB no hay problema en la inclusión de parámetros en las funciones de eventos. Lo único que debes respetar es una variable ev (o como quieras llamarla) para gestionar el evento en FF. En IE el objeto global único window.event (event a secas en mi ejemplo, no haría falta ni pasarlo) bastará:

Código PHP:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"
>
<
html xmlns="http://www.w3.org/1999/xhtml" xml:lang="es" lang="es">
<
head>
<
meta http-equiv="Content-type" content="text/html;charset=iso-8859-1" />
<
title>Página nueva</title>
</
head>

<
body>


<
input type="text" onkeypress="return validar(event, true, false)" />

<
script type="text/javascript">
<!--


function 
validar(evnumerosminusculas) { // 1

    // Captura de las variables generadas por el evento
    
var tecla = (window.event) ? window.event.keyCode ev.which// 2
    
if (tecla==8) return true// 3
    
var te String.fromCharCode(tecla); // 5
    
    // Comienzo de las validaciones
    
var exito false;        // marcará si pasamos las validaciones (con una satisfactoria valdrá)
    
if( numeros )
        
exito exito || /[0-9]/.testte );
    if( 
minusculas )
        
exito exito || /[a-z]/.testte );
    
    return 
exito;



// -->
</script>

</body>
</html> 
Me ha parecido que la condicional de tecla es más correcta así.

Supongo que lo demás será trivial para ti
__________________
- Haz preguntas inteligentes, y obtendrás más y mejores respuestas.
- Antes de postearlo Inténtalo y Búscalo.
- Escribe correctamente tus mensajes.
  #5 (permalink)  
Antiguo 30/08/2008, 18:18
Avatar de killerangel  
Fecha de Ingreso: septiembre-2007
Ubicación: Un punto en el espacio
Mensajes: 592
Antigüedad: 16 años, 7 meses
Puntos: 10
Respuesta: faq 63 con parametros...?

muchas gracias dekenuke!!! como siempre ayudando a los demas, muy amable de tu parte colavorar, se q no seré el único que use este aporte tuyo.

MUXAS GAXAS!!
__________________
Sueñen... y trabajen por hacer esos sueños realidad... de eso se construye el futuro!!
Me siento entre la ASP-ada y la PHP-red
  #6 (permalink)  
Antiguo 30/08/2008, 18:21
Avatar de derkenuke
Colaborador
 
Fecha de Ingreso: octubre-2003
Ubicación: self.location.href
Mensajes: 2.665
Antigüedad: 20 años, 6 meses
Puntos: 45
Respuesta: faq 63 con parametros...?

Muchas de nadas
__________________
- Haz preguntas inteligentes, y obtendrás más y mejores respuestas.
- Antes de postearlo Inténtalo y Búscalo.
- Escribe correctamente tus mensajes.
  #7 (permalink)  
Antiguo 02/09/2008, 18:00
Avatar de killerangel  
Fecha de Ingreso: septiembre-2007
Ubicación: Un punto en el espacio
Mensajes: 592
Antigüedad: 16 años, 7 meses
Puntos: 10
Respuesta: faq 63 con parametros...?

Bueno... habia implementado la funcion y el mismo dia note algo, pero por falta de tiempo no lo coloqué ... pero ahora lo comento...

Funciona... si!... pero no permite la entrada de las flechas de desplazamiento... de hecho pense q lo solucionaría con...

if (tecla==8 || (tecla>=37 && tecla<=40) ){return true}

pero tampoco lo hace... ya q segun parece 37-38-39-40 en ascii son %-&-'-( respectivamente.
siendo así creo q los codigos ascii para las flechas no son los mensionados...

aver si me dan una indicacion. gracias!
__________________
Sueñen... y trabajen por hacer esos sueños realidad... de eso se construye el futuro!!
Me siento entre la ASP-ada y la PHP-red
  #8 (permalink)  
Antiguo 02/09/2008, 18:07
Avatar de derkenuke
Colaborador
 
Fecha de Ingreso: octubre-2003
Ubicación: self.location.href
Mensajes: 2.665
Antigüedad: 20 años, 6 meses
Puntos: 45
Respuesta: faq 63 con parametros...?

De hecho, acabo de probarlo y en IE6 sí funcionan las flechas, en FF3 no.

También he detectado problemas con la tabulación, que es importante. Al parecer lo he solucionado con:
Código PHP:
if (tecla==|| tecla==0) return true// 3 
Pero habrá que ponerlo más tiempo a prueba, quizá haya más agujeros en el script.


Saludos.
__________________
- Haz preguntas inteligentes, y obtendrás más y mejores respuestas.
- Antes de postearlo Inténtalo y Búscalo.
- Escribe correctamente tus mensajes.
  #9 (permalink)  
Antiguo 02/09/2008, 21:28
Avatar de killerangel  
Fecha de Ingreso: septiembre-2007
Ubicación: Un punto en el espacio
Mensajes: 592
Antigüedad: 16 años, 7 meses
Puntos: 10
Respuesta: faq 63 con parametros...?

no se xq no me sorprende q hayas sido tu kien responda de manera rápida, práctica y hasta estética ojala q no queden otros huecos y si no ojala posteen. oye derke gracias otra vez

un abrazo.
__________________
Sueñen... y trabajen por hacer esos sueños realidad... de eso se construye el futuro!!
Me siento entre la ASP-ada y la PHP-red
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 15:52.