方法 : ASP.NET Web ページのコントロールの HTML 属性を設定する
更新 : 2007 年 11 月
ページの要素に HTML 属性を追加する方法を次の例に示します。最初の例は、宣言によって属性をコントロールに追加する方法を示します。コントロールに追加する属性の中でコントロールのプロパティに割り当てられないすべての属性は、そのままブラウザに渡されます。
2 番目の例は、プログラムによって属性とスタイルを Button コントロールに追加する方法を示します。3 番目の例は、プログラムによって属性をページの 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 Web ページ。
Button1 という ASP.NET Button コントロール。
ページの body タグの runat="server" 属性と id="body" 属性。
堅牢性の高いプログラム
コントロールに追加する属性については検証は行われません。キーと値のペアはブラウザにそのまま表示されます。
属性を設定すると、同じ名前の既存の属性がオーバーライドされます。既存の属性の値は変更されません。したがって、属性を変更する場合は、属性を読み取ってから変更し、その後に再びコントロールに追加する必要があります。
属性がプロパティによってコントロールに表示される場合、プロパティは属性設定よりも優先されます。たとえば、value 属性を使用してテキストを設定する場合は、TextBox コントロールの Text プロパティが優先されます。