?id=1747ac2e-435f-4fcf-821c-b0f837f3d3e1
Botón y foco por defecto en páginas ASP.NET 2.0
por José M. Alarcón
Un par de novedades sencillas pero muy útiles que proporciona ASP.NET 2.0 son el botón y el foco por defecto.
Ahora podemos hacer que, pulsar ENTER en un formulario, sea equivalente a hacer clic en un determinado botón. Para ello basta con establecer el atributo defaultbutton en el formulario de nuestro archivo ASPX:
<form defaultbutton=“Boton1” runat=server>
Lo más interesante de esto y que no todo el mundo sabe es que, además, se puede especificar esta misma propiedad en los paneles (controles <asp:panel>) para especificar lo mismo para los controles que hay en su interior:
<asp:panel defaultbutton=“Boton2” runat=server>
Así, cuando tengamos el foco en un control dentro del panel, al pulsar ENTER es como si se pulsase el botón especificado. Esto sobreescribe el comportamiento especificado para el formulario pero sólo dentro del panel, lo cual puede ser muy útil sobre todo si ponemos varios para propósitos diferentes.
También existe un nuevo atributo del formulario llamado deafultfocus, con el que conseguiremos que un determinado control tenga el foco nada más cargar la página ASPX. De este modo nos evitamos el tener que establecerlo con JavaScript, aunque también podríamos establecerlo en el evento Load() con el método Focus() del control en cuestión o con el método SetFocus() de la página.
José Manuel Alarcón Aguín
Fundador de
campusMVP.es, el
proyecto de referencia en formación on-line para programadores en lengua española.
Autor de varios libros y cientos de artículos. Galardonado como
MVP de Microsoft desde 2004. Gallego de Vigo, amante de la ciencia y la
tecnología, la música y la lectura. Ayudando a la gente en Internet desde 1996.