Foros del Web » Programando para Internet » Javascript »

Envio de mensaje segun caracter presionado

Estas en el tema de Envio de mensaje segun caracter presionado en el foro de Javascript en Foros del Web. Hola a todos estuve viendo el codigo SOLAMENTE para aceptar numeros y letras (mayusculas o minusculas) y me va muy bien. Pero tengo dos problemas ...
  #1 (permalink)  
Antiguo 17/02/2006, 17:57
Avatar de JuanKa  
Fecha de Ingreso: septiembre-2004
Mensajes: 468
Antigüedad: 19 años, 7 meses
Puntos: 1
Envio de mensaje segun caracter presionado

Hola a todos estuve viendo el codigo SOLAMENTE para aceptar numeros y letras (mayusculas o minusculas) y me va muy bien. Pero tengo dos problemas

1. Aparte del patron( patron=/^\w+$/; ) como puedo añadir en éste el - (guion). En otras palabras que solo acepte numeros y letras(minusculas y mayuscula) a se me olvidaba la Ñ o ñ tampoco lo debe aceptar.


2. Cuando ingrese por ejemplo un caracter que no sea alfanumerico(=?¿._/*"·, etc....) me mande una alert ('Caracter NO permitido');

<html>
<head>
<script>
function validar(e) {
tecla = (document.all)?e.keyCode:e.which;
if (tecla==8) return true;
patron=/^\w+$/;;
te = String.fromCharCode(tecla);
return patron.test(te);
}
</script>
</head>

<body>
<input type="text" name="textfield" onkeypress="return validar(event)">
</body>
</html>


Gracias y Saludos
  #2 (permalink)  
Antiguo 17/02/2006, 18:09
Avatar de Cap.Buscapina  
Fecha de Ingreso: octubre-2004
Ubicación: Argentina
Mensajes: 836
Antigüedad: 19 años, 6 meses
Puntos: 4
probá con este patron:

Cita:
patron=/[a-zA-Z0-9-]/;
con este patrón la Ñ y ñ no estan permitidas
__________________
by Capitán Buscapina
.
  #3 (permalink)  
Antiguo 17/02/2006, 18:22
Avatar de JuanKa  
Fecha de Ingreso: septiembre-2004
Mensajes: 468
Antigüedad: 19 años, 7 meses
Puntos: 1
ok
me va muy bien ahora el patron.

Pero como puedo mandar un mensaje de error para cualquier caracter que no esta dentro del patron.

Me estoy confundiendo con esto del mensaje dentro de la funcion y no puedo enviar ese mensaje, es decir, estoy hablando del punto 2
function validar(e)

function validar(e) {
tecla = (document.all)?e.keyCode:e.which;
if (tecla==8) return true;
patron=/^\w+$/;;
te = String.fromCharCode(tecla);
return patron.test(te);
}

Es decir en que parte pongo : alert ('Error --> Caracter NO permitida');


Gracias
  #4 (permalink)  
Antiguo 17/02/2006, 18:51
Avatar de Cap.Buscapina  
Fecha de Ingreso: octubre-2004
Ubicación: Argentina
Mensajes: 836
Antigüedad: 19 años, 6 meses
Puntos: 4
por haí:

Cita:
function validar(e) {
tecla = (document.all)?e.keyCode:e.which;
if (tecla==8) return true;
patron=/^\w+$/;
te = String.fromCharCode(tecla);
if(patron.test(te)){
return true;
}else{
alert("caracter no permitido");
return false;
}
}
aunque el código genera un alert en el caso de que por ejemplo se precione la tecla shift.


yo lo aría así:

Cita:
<html>
<head>
<script>
function validar(i) {
patron=/[^a-zA-Z0-9-]/;
if(patron.test(i.value)){
alert("caracter no permitido");
i.value=i.value.replace(patron,"");
}
}
</script>
</head>

<body>
<input type="text" name="textfield" onkeyup="validar(this)">
</body>
</html>
claro que cada uno tiene su forma de hacer las cosas.

saludos
__________________
by Capitán Buscapina
.

Última edición por Cap.Buscapina; 17/02/2006 a las 18:58
  #5 (permalink)  
Antiguo 17/02/2006, 19:11
Avatar de JuanKa  
Fecha de Ingreso: septiembre-2004
Mensajes: 468
Antigüedad: 19 años, 7 meses
Puntos: 1
Ok eso estaba buscando

Gracias

  #6 (permalink)  
Antiguo 17/02/2006, 23:08
Avatar de Cap.Buscapina  
Fecha de Ingreso: octubre-2004
Ubicación: Argentina
Mensajes: 836
Antigüedad: 19 años, 6 meses
Puntos: 4
ok, me alegro.

saludos
__________________
by Capitán Buscapina
.
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 00:53.