Comunidad de diseño web y desarrollo en internet online

Post Back en control HTML al pulsar enter

Citar            
MensajeEscrito el 10 Dic 2008 11:03 pm
Este es mi problema... Tengo un campo "input" HTML de tipo "text" para realizar búsquedas en las entradas de una wiki, quiero que cuando se coloque el foco en el campo y se pulse la tecla enter, se realice automáticamente la búsqueda (en lugar de utilizar un botón "Buscar" - eso lo programo en javascript)... Me encontraba haciéndolo pero resulta que cuando pulso la tecla enter y estoy dentro del campo, se activa una especie de "AutoPostBack" - como si se mandaran datos al servidor - (lo relaciono con ASP.NET) y se hace reload en la página, no entiendo por qué es eso... Intento abrir la página de "Resultados de la búsqueda" utilizando el window.open() de javascript, pero no logro hacerlo en la página actual del explorador, porque antes de hacer eso se recarga la página actual.... ¿Qué puedo hacer? :(

Por Ben-uR

15 de clabLevel



 

msie
Citar            
MensajeEscrito el 11 Dic 2008 05:32 pm
Chequea que el boton sea de tipo button y no submit

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 13 Dic 2008 05:55 am
Es que no tengo ningún botón, utilizo el evento keypress del control input de tipo "text" para iniciar la búsqueda...

Por Ben-uR

15 de clabLevel



 

msie7
Citar            
MensajeEscrito el 13 Dic 2008 10:47 am
Posiblemente el navegador (y pase en unos y otros no) esté haciendo el submit al interpretar que estás dentro de un form

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 13 Dic 2008 07:12 pm
u_u!!!

Por Ben-uR

15 de clabLevel



 

msie7
Citar            
MensajeEscrito el 17 Dic 2008 05:04 am
Como ya lo había dicho Jorge mi problema pasaba porque el navegador interpretaba que por estar en un form debía hacer submit, así que la solución está por ahí... Lo que hice para solucionar el problema fue que en el evento keydown del "input text" obtenía la tecla que se presiono y si era 13, cancelo el evento con: "event.returnValue = false" y luego en ese mismo método a continuación abro la ventana con window.open() mándando como segundo parámetro "_self"... y listo problema solucionado...

Por Ben-uR

15 de clabLevel



 

msie7

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.