如何:在 ASP.NET 网页中设置控件的 HTML 属性

更新:2007 年 11 月

这些示例显示如何向页面中的元素添加 HTML 属性。第一个示例演示如何以声明方式向控件中添加属性。添加到控件中、但不与该控件的属性 (Property) 对应的任何属性 (Attribute) 都传递到浏览器。

第二个示例演示如何以编程方式向 Button 控件中添加属性和样式。第三个示例演示如何以编程方式向该页的 body 标记中添加属性,这需要您首先向该标记中添加 runat="server" 和 ID 属性。

示例

<body id="body" runat="server">
    <form id="form1" runat="server">
      <!-- Example1 --> 
      <input runat="server" id="Button1" type="button" onmouseover="rollover()" onmouseout="exitrollover()" />
    </form>
</body>

<script runat="server">

    Private Sub Page_Load(ByVal sender As System.Object, _
            ByVal e As System.EventArgs) Handles MyBase.Load

        ' Example 2
        Button1.Attributes.Add("onclick", "alert('hello, world')")
        Button1.Style.Add("background-color", "red")

        ' Example 3
        body.Attributes("bgcolor") = "lightblue"

    End Sub

</script>
<body id="body" runat="server">
    <form id="form1" runat="server">

      <!-- Example1 --> 
      <input runat="server" id="Button1" type="button" onmouseover="rollover()" onmouseout="exitrollover()" />
    </form>
</body>

<script runat="server">
    private void Page_Load()
    {
        //Example 2
        Button1.Attributes.Add("onclick", "alert('hello, world')");
        Button1.Style.Add("background-color", "red");

        //Example 3
        body.Attributes["bgcolor"] = "lightblue";

    }
</script>

编译代码

此示例需要:

  • ASP.NET 网页。

  • 名为 Button1 的 ASP.NET Button 控件。

  • 位于该页的 body 标记中的属性 runat="server" 和 id="body"。

可靠编程

没有验证您添加到控件上的属性;键/值对按原样呈现给浏览器。

在设置一个属性时,它重写同一名称的任何现有属性。(它不修改现有属性上的值)。因此,如果希望修改属性,必须先读取它,再修改它,然后将它重新添加到控件中。

如果某一特性在控件中是通过属性表示的,则该属性优先于您进行的特性设置。例如,如果您尝试使用 value 属性设置文本,则 TextBox 控件的 Text 属性优先。

请参见

任务

如何:读取 Web 窗体页中控件的 HTML 属性