Foros del Web » Programando para Internet » Javascript »

ExpReg para letras y espacios

Estas en el tema de ExpReg para letras y espacios en el foro de Javascript en Foros del Web. Necesito una expresion regular que me valide un campo de texto al cual solo le pueda poner letras y/o espacios. Por ejemplo: Jefe de Operaciones ...
  #1 (permalink)  
Antiguo 25/04/2013, 13:31
 
Fecha de Ingreso: marzo-2013
Mensajes: 11
Antigüedad: 11 años, 1 mes
Puntos: 0
ExpReg para letras y espacios

Necesito una expresion regular que me valide un campo de texto al cual solo le pueda poner letras y/o espacios. Por ejemplo:

Jefe de Operaciones
Gerente

con el evento keypress para evitar que el usuario lo pueda teclear, pero que si pueda teclear el backspace para si quiere borrar algo.

Salu2s
  #2 (permalink)  
Antiguo 25/04/2013, 15:12
 
Fecha de Ingreso: abril-2011
Mensajes: 1.342
Antigüedad: 13 años
Puntos: 344
Respuesta: ExpReg para letras y espacios

Buenas,

Así podría servir:

Código HTML:
Ver original
  1.     <head>
  2.         <script type="text/javascript">
  3.             window.onload=function()
  4.             {
  5.                 document.getElementById("prueba").onkeypress = function(event)
  6.                 {
  7.                   event = event || window.event;
  8.                   var caracter = event.charCode || event.keyCode;
  9.                    return (/[a-zA-Z ]/.test(String.fromCharCode(caracter)));      
  10.                 }
  11.             }
  12.         </script>
  13.     </head>
  14.     <body>
  15.         <input type="text" id="prueba">
  16.     </body>
  17. </html>
  #3 (permalink)  
Antiguo 25/04/2013, 18:50
Avatar de emprear
Colaborador
 
Fecha de Ingreso: junio-2007
Ubicación: me mudé
Mensajes: 8.388
Antigüedad: 16 años, 10 meses
Puntos: 1567
Respuesta: ExpReg para letras y espacios

Cita:
Iniciado por reciervide Ver Mensaje
Necesito una expresion regular que me valide un campo de texto al cual solo le pueda poner letras y/o espacios. Por ejemplo:

Jefe de Operaciones
Gerente

con el evento keypress para evitar que el usuario lo pueda teclear, pero que si pueda teclear el backspace para si quiere borrar algo.

Salu2s
Lo correcto para ese caso sería
Código:
<!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">
<head>
<title>titulo</title> 
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
<script type="text/javascript">
function validar(idcampo, mensaje) {
var cadena = document.getElementById(idcampo).value;
var exp_reg  = /^[a-z\s\u00C0-\u00ff]+$/i; // expresión regular para letras(máy o minus), acentuadas o no, y espacios en blanco
var verifica = exp_reg.test(cadena);
if (verifica == true){
//alert('ok');
document.getElementById(mensaje).innerHTML = "Correcto";
}else {
//alert('error');
document.getElementById(mensaje).innerHTML = "Incorrecto";
return false;
}
}
</script>
 
</head>
<body>
<form action="#">
<div>
<label for="nombre">Nombre</label>
<input type="text" onkeyup="validar(this.id,'mensaje_nombre');" id="nombre" />
<span id="mensaje_nombre"><!-- aqui el mensaje a medida que se introducen caracteres --></span>
<br />
<label  for="apellido">Apellido</label>
<input type="text" onkeyup="validar(this.id,'mensaje_apellido');" id="apellido" />
<span id="mensaje_apellido"><!-- aqui el mensaje a medida que se introducen caracteres --></span>
</div>
</form>
</body>
</html>
Saludos
__________________
La voz de las antenas va, sustituyendo a Dios.
Cuando finalice la mutación, nueva edad media habrá
S.R.

Etiquetas: espacios, letras
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 19:54.