Las secuencias de comandos de cliente se pueden agregar a los controles de una página Web ASP.NET mediante declaración, del mismo modo que se agregarían a elementos HTML. Opcionalmente, puede agregar eventos de secuencias de comandos de cliente a un control de servidor Web ASP.NET mediante programación, lo que resulta útil cuando el evento o el código depende de información que sólo está disponible en tiempo de ejecución.
Nota: esta situación se describe en el siguiente artículo de Microsoft.
En el ejemplo de código siguiente se muestra una página Web ASP.NET que incluye una secuencia de comandos de cliente que cambia el color del texto de un botón cuando el usuario pasa el mouse (ratón) por encima de él.
<%@ Page Language="C#" %>
<html>
<head runat="server">
<title>Untitled Page</title>
<script type="text/javascript">
var previousColor;
function MakeRed()
{
previousColor = window.event.srcElement.style.color;
window.event.srcElement.style.color = "#FF0000";
}
function RestoreColor()
{
window.event.srcElement.style.color = previousColor;
}
</script>
</head>
<body>
<form id="form1" runat="server">
<asp:button id="Button1" runat="server"
text="Button1"
onmouseover="MakeRed();"
onmouseout="RestoreColor();" />
</form>
</body>
</html>
En el evento Init o Load de la página, llame al método Add de la colección Attributes del control.
En el ejemplo de código siguiente se muestra cómo agregar una secuencia de comandos de cliente a un control TextBox. La secuencia de comandos de cliente muestra la longitud del texto en el control TextBox. La secuencia de comandos presupone que la página contiene un elemento span denominado spanCounter.
protected void Page_Load(object sender, EventArgs e)
{
String displayControlName = "spanCounter";
TextBox1.Attributes.Add("onkeyup", displayControlName +
".innerText=this.value.length;");
}
Para agregar un evento onclick de cliente a un control de botón
En el control de botón (controles Button, LinkButton e ImageButton), establezca la propiedad OnClientClick en la secuencia de comandos de cliente que se debe ejecutar.
En el ejemplo de código siguiente se muestra cómo agregar un evento Click de secuencia de comandos de cliente a un control Button.
<%@ Page Language="C#" %>
<script runat="server">
protected void Button1_Click(Object sender, EventArgs e)
{
Label1.Text = "Server click handler called.";
}
</script>
<html >
<body>
<form id="form1" runat="server">
<asp:Button ID="Button1" Runat="server"
OnClick="Button1_Click"
OnClientClick="return confirm('Ready to submit.')"
Text="Test Client Click" />
<br />
<asp:Label ID="Label1" Runat="server" text="" />
</form>
</body>
</html>
Guarda | Imprime | Recomienda
Otros artículos de esta serie:
Agregar eventos de secuencias de comandos de cliente a los controles de servidor Web ASP.NET
Las secuencias de comandos de cliente se pueden agregar a los controles de una página Web ASP.NET mediante declaración, del mismo modo que se agregarían a elementos HTML. Opcionalmente, puede agregar eventos de secuencias de comandos de cliente a un control de servidor Web ASP.NET mediante programación, lo que resulta útil cuando el evento o el código depende de información que sólo está disponible en tiempo de ejecución.
Nota: esta situación se describe en el siguiente artículo de Microsoft.
Para agregar un controlador de eventos de cliente a un control de servidor ASP.NET mediante declaración
En el ejemplo de código siguiente se muestra una página Web ASP.NET que incluye una secuencia de comandos de cliente que cambia el color del texto de un botón cuando el usuario pasa el mouse (ratón) por encima de él.
Para agregar un controlador de eventos de cliente a un control de servidor ASP.NET mediante programación
En el evento Init o Load de la página, llame al método Add de la colección Attributes del control.
En el ejemplo de código siguiente se muestra cómo agregar una secuencia de comandos de cliente a un control TextBox. La secuencia de comandos de cliente muestra la longitud del texto en el control TextBox. La secuencia de comandos presupone que la página contiene un elemento span denominado spanCounter.
Para agregar un evento onclick de cliente a un control de botón
En el control de botón (controles Button, LinkButton e ImageButton), establezca la propiedad OnClientClick en la secuencia de comandos de cliente que se debe ejecutar.
En el ejemplo de código siguiente se muestra cómo agregar un evento Click de secuencia de comandos de cliente a un control Button.
Otros artículos de esta serie: