| |||
Comprobar la posición de letras y numeros en un imput Hola a todos. A ver si alguien me puede echar una mano, he podido comprobar si en el imput todos los caracteres son letras y números o si hay algun caracter que no lo sea, pero no logro armar algo que me compruebe si el formato es @@####@@## (o sea letra letra número número número número letra letra número número)y si no tiene ese formato de un alerta de formato incorrecto, oviamente para quien pueda tirarme una punta por minima que sea, mil gracias. |
| |||
Re: Comprobar la posición de letras y numeros en un imput Hola Pues te tocaria hacer una funcion que te reciba la cadena, y luego cortas esa cadena y la pones en un array Ese array lo pones a compararse en un for y que dependiendo de la posición pues se compararia también si es texto o numérico y por cada uno que este erroneo podrias mostrar un alert o dejar el alert a lo ultimo y en variables guardar las posiciones que estan incorrectas, es solo una idea.
__________________ Suerte. _______________________________ "La vida es el principio de la muerte". |
| ||||
Re: Comprobar la posición de letras y numeros en un imput Bufff. ¿No es más facil por expresiones regulares y una sencilla funcion test? Te doy una pista /^\w{2}\d{4}\w{2}\d{2}$/i
__________________ - Haz preguntas inteligentes, y obtendrás más y mejores respuestas. - Antes de postearlo Inténtalo y Búscalo. - Escribe correctamente tus mensajes. |
| ||||
Re: Comprobar la posición de letras y numeros en un imput Sí pero sin expresiones regulares aunque tuvieras un cacho tendrías que comprobar que todos fueran, por ejemplo, numeros. Tendrías que hacer: Number(cacho) == cacho O si no algo más global var numeros="1234567890"; var letras="abcd...xyzABCD..XYZ"; if (numeros.indexOf(caracter)>-1) //es numero else if (letras.indexOf(caracter)>-1) //es letra else //no es ni numero ni letra Y, a mi juicio, sería más complicado, más lento, ocuparía más memoria, y el script tendría peor calidad (pa los puristas ) Eso sí, te recomiento utilizar el que tú entiendas mejor. Por cierto kaninox, la función substr no existe en javascript; creo que te has confundido con el PHP. Además en la función substr el tercer argumento es longitud del substring, no caracter final: string substr ( string $string, int $start [, int $length] ); Un saludo
__________________ - Haz preguntas inteligentes, y obtendrás más y mejores respuestas. - Antes de postearlo Inténtalo y Búscalo. - Escribe correctamente tus mensajes. |
| ||||
Re: Comprobar la posición de letras y numeros en un imput yes mucha razon en ello :P pues como habia dicho si el compa no sabe de lo que va los expresiones regulares pues que tratara con ir comparando, se me olvido poner que era en php :P weno se entendio por los POST pues para mi gusto siempre mejor validar al lado del server que al lado del usuario pero weno :P yo tambien uso javascript X)
__________________ Gokuh Salvo al mundo. PUNTO!!!! |
| |||
Re: Comprobar la posición de letras y numeros en un imput Cita: Perdon por aucentarme, por cuestiones laborales no pude seguir con lo que estaba y necesitaria una mano mas a fondo y tranquilo no lo entendí mal, lo que debo controlar en la cadena de 10 caracteres, es que los 2 primeros caracteres sean siempre letras los 4 siguientes siempre sean números los 2 siguientes sean letras y los 2 últimos sean numeros siempre se tendria que dar esta condicion sino un Alert "No cumple con los requisitos" las letras son siempre en MAYUSCULAS y no llevaria "Ñ" (por ej. AB1234CD56)
Iniciado por kaninox pues como dice dernuke con expresiones regulares ahora si no sabes de que van puedes cortar los trozos de tu variable y compararlos con sbstr(variable, P, F) donde variable es tu variable :P y P es el numero de principio y F final sbstr($_POST[mi_variable], 0, 5) sbstr($_POST[mi_variable], 10, 15) etc... si tampoco sabes de que hablo :P me dices y te hechamos una mano mas a fondo ¬¬ que no se entienda mal X) saludos |
| ||||
Re: Comprobar la posición de letras y numeros en un imput Hola RoJaS-21 Utilizando la expresión regular de derkenuke, te he preparado esto:
Código:
Saludos, <html> <head> <script type="text/javascript"> function validar(txt) { patron = /^\w{2}\d{4}\w{2}\d{2}$/i; if (!patron.test(txt)) alert('Error'); } </script> </head> <body> <input type="text" onblur="validar(this.value)" /> </body> </html> Última edición por JavierB; 09/04/2007 a las 08:24 Razón: Corregir etiqueta |
| |||
Re: Comprobar la posición de letras y numeros en un imput Cita: Bueno, pues probando este script logrado por JavierB, no importa que caracter se use (números, letras, o combinados) siempre muestra el alert, tal vez JavierB lo puso a modo de ej para que RojaS-21 se guiara, pero pues tal vez le falto algo.
Iniciado por JavierB Hola RoJaS-21 Utilizando la expresión regular de derkenuke, te he preparado esto: Código PHP:
__________________ Suerte. _______________________________ "La vida es el principio de la muerte". |
| ||||
Re: Comprobar la posición de letras y numeros en un imput Hola de nuevo. El fallo ha sido utilizar la etiqueta [php] que se traga las barras invertidas. Ya está corregido. Lo que no he conseguido es que sólo acepte mayúsculas Saludos, |
| ||||
Re: Comprobar la posición de letras y numeros en un imput Para admitir sólo las mayúsculas y las minúsculas no, habría que sustituir \w por [A-Z], y además quitar la i final de la expresión regular, que hace que no se tenga en cuenta mayúsculas y minúsculas. Ojo que [A-Z] admite sólo el rango A-Z en inglés, es decir, ni la Ñ ni las tildes. Para aceptar esas letras: [A-ZÁÉÍÓÚÜÑ], tendremos que ponerlas al lado de A-Z. Un saludo.
__________________ - Haz preguntas inteligentes, y obtendrás más y mejores respuestas. - Antes de postearlo Inténtalo y Búscalo. - Escribe correctamente tus mensajes. |
| |||
Re: Comprobar la posición de letras y numeros en un imput Después de probarlo encontré el mismo error y leyendo un poco mas detenidamente y viendo lo que me sugirió derkenuke, que por cierto desconozco lo que es una expresión regular (tendré que estudiar un poco mas ) lo pude hacer funcionar, y ahora me encuentro que el error ya lo corrigieron gracias JavierB pero me encuentro todavía con el problema de que no me controla si son mayúsculas o no . Genial derkenuke, simplemente genial muchas gracias. Todo funcionó a la perfección. Última edición por RoJaS-21; 09/04/2007 a las 09:30 |
| ||||
Re: Comprobar la posición de letras y numeros en un imput Hola otra vez. Había probado lo de [A-Z] que comenta derkenuke, pero se me había pasado el pequeño/gran detalle de la i RoJaS-21: tienes que cambiar esta línea:
Código:
Saludos, patron = /^[A-Z]{2}\d{4}[A-Z]{2}\d{2}$/; |