| Portada | Monotemáticos | Secciones | Desarrolladores | Comunidad | Servicios | Servicios profesionales | RSS | ||||
| FAQ: No permitir caracteres especiales en campo text |
estoy aqui mal Se muestran 5 comentarios sin revisar
| santiago yambay | 01/4/08 |
| si no puedes hacerlo funcionar de esa manera haslo asi function validaCaracteres() { if(window.event.keyCode==13 && window.event.keyCode==116)//bloque el enter y F5 { alert(String.fromCharCode(window.event.keyCode));//Yo utilizo esta linea para saber que teclas bloquear arriba window.event.keyCode=0; } } //en el evento keypress de la caja llamo a la funcion ojalá aya podido aclarar mejor tu inquietud me siento en la obligación de escribir por que no sabia como hacerlo tambien y me ayudaron con pautas pero con eso ya puedes controlar todo |
|
| Ricardo Chicangana | 01/4/08 |
| MIra etsa te debe funcionar tanto en firefox como en ie function solo_char(e) { var key=(document.all) ? e.keyCode : e.which; if ((key < 97 || key > 122) && (key < 65 || key > 90) && key != 32 && (key < 48 || key > 57) && key != 42 && key != 47 && key != 45 && key != 43 && key != 0 && key != 8 && key != 46 && key != 37 && key != 241 && key != 209 && key != 40 && key != 41 && key != 58) { if(document.all) { event.returnValue = false; } else { return false; } } return true; } lo invocas <input type=\"text\" onkeypress=\'return solo_char(event)\'> |
|
| Juan Manuel Medina | 01/4/08 |
| No estoy muy seguro que verificar los caracteres especiales de uno por uno sea la mejor manera, ya que en sí son mayoría en el ASCII. Te propongo mejor verificar los válidos: <script language="javascript"> function valida(e) { var validas = "abcdefghijklmnopqrstuvwxyz 1234567890"; // incluir todos los caracteres validos validas += String.fromCharCode(8,9,13,46,116,122); // agregamos el backspace, el tabulador, el intro, el supr., el F5 y el F11 var t = (e.keyCode) ? String.fromCharCode(e.keyCode) : String.fromCharCode(e.which); return (validas.indexOf(t.toLowerCase()) >= 0); } </script> <body> <input type="text" id="campo" onkeypress="return valida(event)"> <input type="button" onclick="alert(document.getElementById('campo').value)" value="Mostrar"> </body> |
|
| daniel | 01/4/08 |
| puedes usar lo sig: <input type="text" name="no_de_control" id="no_de_control" size="20" onKeyPress="return goodchars(event,'0123456789')" maxlength="10"> en la parte de goodchars coloca unicamente lo que quieras que se pueda teclear y pegas la sig funcion dentro de tags de javascript: function getkey(e){ if (window.event) return window.event.keyCode; else if (e) return e.which; else return null; } function goodchars(e, goods){ formulario = document.comision; var key, keychar; key = getkey(e); if (key == null) return true; // get character keychar = String.fromCharCode(key); keychar = keychar.toLowerCase(); goods = goods.toLowerCase(); // check goodkeys if (goods.indexOf(keychar) != -1) return true; // control keys if ( key==null || key==0 || key==8 || key==9 || key==13 || key==27 ) return true; // else return false return false; } suerte! |
|
| yohana | 02/4/08 |
| Revisa esta función a ver si te sirve: function esLetraObli(campo) { var cad = /^([a-z]|[A-Z]|á|é|í|ó|ú|ñ|Ñ| |ü|s|\\.|-)+$/ if(cad.test(campo)) return false; return true; } en el var cad tu eliges los caracteres que quieres que te tome como válidos, todo lo que sea distinto a eso te da un mensaje que error que obviamente tu determinas, este es un ejemplo: <script language=\"javascript\" type=\"\"> var validacion = new Array(); validacion[0] = [\"document.formulario.campo\", \"esLetraObli\", \"este campo sólo debe contener letras\"]; // El subindice de este arreglo siempre debe ser uno (1) mayor que el subindice del último valor del arreglo validacion[1] = [\"\", \"\", \"\"]; </script> |
|
| Ver la FAQ y todos sus comentarios | |
| Añadir un comentario del artículo |
|
Comentarios no revisados de: |