Internet Explorer, formularios, submit y la tecla intro
Escenario: el típico formulario de búsqueda formado por un campo de texto(input type=”text”) y dos botones de enviar(input type=”submit”). Al enviar el formulario se comprueba qué botón se ha pulsado a través del array $_POST. El usuario introduce el texto a buscar, pulsa la tecla intro y el formulario se envía correctamente. He dicho correctamente? Pues no, en Internet Explorer (6 y 7 almenos) no funciona.
Después de hacer algunas comprobaciones descubro que el problema es que al pulsar intro el formulario se envía, pero sin añadir a través de qué botón lo ha hecho. Busco un poco a través de Google y descubro que se trata de un bug que se produce cuando hay un formulario con un solo campo de texto. La solución, simple a la vez que sucia:
<!–[if IE]><input type=”text” style=”display: none;” disabled=”disabled” size=”1″ /><!–>
Con esta línea dentro del formulario en cuestión el usuario introduce el texto a buscar, pulsa la tecla intro y éste se envía correctamente, incluso en Internet Explorer.
- Publicado por admin a las 11:54 pm
- Permalink de esta entrada
- Guardado en: Bugs, Programación
- Comentarios RSS de esta entrada
- TrackBack URI
muchisimas gracias tu aporte me ha sido de gran ayuda
Estupendo aporte, me ha solucionado mucho!
Gracias!
Perfecto…estaba buscando una solución a este problema, y esta funciona de maravilla.
Gracias.
Hola, tengo un formulario con dos campos uno text y otro password y al pulsar la tecla intro no me funciona en IE, hay alguna solucion??
Muchas gracias
Tienes puesto un botón submit o haces el submit de algún modo?
Tengo un problema ejecutando un submit con jquery $(“#signupForm”).submit();.El problema es que desde cuaquier navegador hace una unica peticion y desde iexplorer 6 lanza dos peticiones al servidor lo que hace que de error una de ellas. Alguien sabria decirme por que en iexplorer 6 se lanzan 2 peticiones???????????
Gracias