Ver Mensaje Individual
  #1 (permalink)  
Antiguo 30/11/2010, 08:35
Avatar de IsaBelM
IsaBelM
Colaborador
 
Fecha de Ingreso: junio-2008
Mensajes: 5.032
Antigüedad: 15 años, 10 meses
Puntos: 1012
[APORTE] permitir inserta dígito o letras en un campo

no sabía que se pudieran hacer aportes a este foro tal que así. espero no estar metiendo la pata. el caso es que me he visto obligada a crear una función para que solo se admita o bien números o letras en un campo de texto. lo único que cambia con respecto a algún procedimiento que he visto por ahí, es una pequeña modificación de la expresión regular. con esta modificación se evita que aquellas teclas que representan dos o mas caracteres, se puedan inserta esos valores secundarios. claro está esto no evita el copy/paste
Cita:
function numOrlet(evt, valor) {
key = (evt.keyCode) ? evt.keyCode : evt.charCode;
if (key == 8) return true;
caracter = String.fromCharCode(key);
var pattner = /^(\d*)$/;
if(!pattner.test(caracter)) {
var pattner = /^([A-Za-z\s]*)$/;
if(pattner.test(caracter+valor)) { return true; } else { alert('no puedes insertar letras'); return false;}
} else {
var pattner = /^(\d*)$/;
if(pattner.test(caracter+valor)) { return true; } else { alert('no puedes insertar números'); return false;}
}
}

<input type="text" value="" onkeypress="return numOrlet(event, this.value)" />