在服务器端控件中添加客户端属性

  我们有时会向服务器端控件中添加一些特殊的属性,这类属性不需要服务器端的处理,只需简单的发送至客户端即可,我们不妨称其为客户端属性,例如HTML属性或自定义属性(可能用于实现某种特定的JavaScript功能)。可以通过以下几种方法达到这个目的:
      a.直接向控件添加客户端属性
<asp:Button ID="MyButton" Text="ClickMe" onmouseover="this.style.cursor='pointer'" runat="server" />

      其中的onmouseover是客户端属性,注意,编译器是允许这种写法的,但会显示警告。
      b.调用内置方法
      可以通过调用WebControl.Attributes.Add()方法为控件添加客户端属性,如下所示:

MyButton.Attributes.Add("onmouseover""this.style.cursor='pointer'");

      这也是最常用的方法。
      c.创建自定义控件
      如果某个类型的服务器端控件中经常需要添加客户端属性,则可以考虑创建一个继承自该服务器端控件的自定义控件,其中包含特定的客户端属性。
      正是考虑到这一点,ASP.NET 2.0中为按钮控件(包括Button、LinkButton、ImageButton控件)提供了OnClientClick属性,可以这样写:

MyButton.OnClientClick = "alert('Hello!')";

      真是贴心的功能!

原文地址:https://www.cnblogs.com/fslnet/p/1561209.html