2011-07-20 45 views
5

Quiero que las personas que intentan suscribirse en mi sitio web ingresen un alias y ese sobrenombre debe consistir exclusivamente en letras y números (sin caracteres especiales).Limitar caracteres a letras y números en el campo de entrada

Me gustaría algo como lo siguiente: abcdefghijklmnopqrstuvwxyz1234567890 solamente.

¿Cómo puedo comprobar si solo tiene esos?

Respuesta

12

La solución HTML5 sería ...

<input type="text" id="input-nickname" name="nickname" pattern="[a-z\d]*" /> 

jsFiddle.

Sin embargo, para el mejor soporte de los navegadores, se puede usar JavaScript ...

document.getElementById('input-nickname').onkeyup = function(event) { 

    this.value = this.value.replace(/[^a-z\d]/, ''); 

} 

jsFiddle.

Para hacer que la versión de JavaScript sea similar al método HTML5, observe el evento submit del formulario.

Tenga en cuenta que tiene una definición bastante estricta de letras y números. Para una compatibilidad adecuada con Unicode, busque los rangos que le interesan y use \u0000-\uFFFF para especificarlo.

0

puedo sugerir a echar un vistazo a: RegEx library

contiene una gran cantidad de expresiones regulares que se pueden probar directamente en el sitio y cambiar de acuerdo a sus necesidades.

Siempre lo uso como fuente cada vez que necesito trabajar con RegEx. enlace

-1

con javasacript

function testAlphanumeric(input){ 
var regex=/^[0-9A-Za-z]+$/; 
if(regex.test(input)){ 
alert("Good") 
return true; 
} else { 
alert("Incorrect") 
return false; 
} 
} 

fuente: http://newsourcemedia.com/blog/javascript-non-alphanumeric-characters-regex/

+0

Gracias por sus respuestas. La versión de JavaScript de alex se ve muy genial. Pero traté de presionar varias letras a la vez y cuando lanzo las teclas, no borraba todos los caracteres especiales. Solo quiero una función (php está bien) que marque verdadero o falso, la cadena contiene otros caracteres además de a-z 0-9 – james

+0

Usaré algo como if (preg_match ("REGEX", "cadena para verificar")) – james

Cuestiones relacionadas