Seguimiento a Respuestas de Otros Expertos

Wednesday, March 15, 2006

Simular tab cuando presiono Enter

JavierBolivia Responde:

Hola MJ, la mejor solución a tu problema es utilizar javascript, para evitar
los postbacks innecesarios. Supongamos que tienes 2 controles TextBox en tu
formulario:

<asp:TextBox ID="txt1" runat="server"
onkeyup="keyUpTxt1();"></asp:TextBox>
<asp:TextBox ID="txt2" runat="server"></asp:TextBox>

Fíjate que he declarado una propiedad que el control TextBox no tiene
("onkeyup"). Visual Studio probablemente te mostrará un warning pero eso no
impedirá que ASP.NET compile correctamente la página. El truco es que el
TextBox se renderiza en el cliente como un control INTPUT de tipo TEXTO, el
cual sí soporta el evento de cliente "onkeyup". Dicho esto sólo queda crear
la función en javascript que haga lo que deseas (es decir, verificar si se
presionó la tecla "ENTER" y cambiar el foco a el otro textBox):


<script type="text/javascript">

function keyUpTxt1()
{
if (event.keyCode==13)
{
document.getElementById('txt2').focus();
}
}
</script>


El defecto de esta solución es que el manejo de la variable "event" es
exclusivo para InternetExplorer, por lo que si deseas soportar varios
exploradores, debes investigar cómo sería el código equivalente.

Saludos,

Javier

"MJ" escribió:

> Hola Grupo
> Tengo una pagina web .net
> la cual tiene varios campo, como puedo hacer que cuando presione enter , me
> cambie al siguiente control textbox que tengo , esto solo me funciona cuando
> presiono TAB
> Si alguien sabe de algun link
> Desde ya muchas gracias
>

0 Comments:

Post a Comment

<< Home