共用方式為


HtmlForm 伺服器控制項宣告式語法

建立伺服器端控制項,其對應到 <form> HTML 項目,並且允許您為 Web 網頁中的項目建立容器。

<form 
    DefaultButton="string"
    DefaultFocus="string"
    EnableViewState="False|True"
    Id="string"
    SubmitDisabledControls="False|True"
    Visible="True|False"
    OnDataBinding="OnDataBinding event handler"
    OnDisposed="OnDisposed event handler"
    OnInit="OnInit event handler"
    OnLoad="OnLoad event handler"
    OnPreRender="OnPreRender event handler"
    OnUnload="OnUnload event handler"
    runat="server"
    >
        <!--Other controls, input forms, and so on.--> 
</form>

備註

使用 HtmlForm 控制項,對 HTML <form> 項目進行設計程式。 若要利用回傳服務,所有的 Web Form 控制項,不論是 HTML 控制項、Web 控制項、使用者控制項或自訂控制項,都必須在 HtmlForm 控制項之語式正確的開頭和結尾標記之間形成巢狀結構。 如果沒有適當地結束標記,ASP.NET 將無法辨認項目。 項目會被忽略或將發生編譯錯誤,這取決於項目是如何形成。

注意事項注意事項

在單一 Web Form 網頁上無法包含一個以上的 HtmlForm 控制項。

根據預設,HtmlForm 控制項的 method 屬性是設定為 POST。 您可以自訂 method 屬性以符合需求,但是將 method 屬性設定為 GET 或 POST 以外的值,可能會中斷 ASP.NET 所提供的內建檢視狀態和回傳服務。

注意事項注意事項

action 屬性永遠設為網頁本身的 URL。而 action 屬性不能變更,因此,您只能回傳至網頁本身。

注意事項注意事項

form 項目的 name 屬性已在 XHTML 1.1 中被取代。因此在 ASP.NET 4 中,這個控制項不會呈現 name 屬性。

範例

下列範例以每個按鈕的個別 OnServerClick 處理常式顯示三個 HtmlButton 控制項。 每一個事件會引發伺服器的回傳 (對於會發生回傳的案例,HtmlForm 控制項是必要的)。 這個範例也示範在 Web Form 網頁上只能有一個 HtmlForm 控制項,包含支援多個事件的表單。 如果包含一個以上的 HtmlForm 控制項,.NET Framework 將會擲回例外狀況。

<%@ Page Language="VB" AutoEventWireup="True" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>HtmlForm Control</title>

   <script runat="server">
      Sub Button1_OnClick(Source As Object, e As EventArgs)
         Span1.InnerHtml = "You clicked Button1"
      End Sub

      Sub Button2_OnClick(Source As Object, e As EventArgs)
         Span2.InnerHtml = "You clicked Button2"
      End Sub

      Sub Button3_OnClick(Source As Object, e As EventArgs)
         Span3.InnerHtml = "You clicked Button3"
      End Sub
   </script>

</head>
<body>

   <h3>HtmlForm Sample</h3>

   <form id="ServerForm" runat="server">     
      <button id="Button1" runat="server"
              onserverclick="Button1_OnClick">
         Button1
      </button>
      &nbsp;&nbsp;
      <span id="Span1" runat="server" />
      <p />
      <button id="Button2" runat="server"
              onserverclick="Button2_OnClick">
         Button2
      </button>
      &nbsp;&nbsp;
      <span id="Span2" runat="server" />
      <p />
      <button id="Button3" runat="server"
              onserverclick="Button3_OnClick">
         Button3
      </button>
      &nbsp;&nbsp;
      <span id="Span3" runat="server" />
   </form>
</body>
</html>
<%@ Page Language="C#" AutoEventWireup="True" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>HtmlForm Control</title>

    <script runat="server">
       void Button1_OnClick(object Source, EventArgs e) 
       {
          Span1.InnerHtml="You clicked Button1";
       }
       void Button2_OnClick(object Source, EventArgs e) 
       {
          Span2.InnerHtml="You clicked Button2";
       }
       void Button3_OnClick(object Source, EventArgs e) 
       {
          Span3.InnerHtml="You clicked Button3";
       }
    </script>

</head>
<body>

   <h3>HtmlForm Sample</h3>

   <form id="ServerForm" runat="server">     
      <button id="Button1" runat="server"
              onserverclick="Button1_OnClick">
         Button1
      </button>
      &nbsp;&nbsp;
      <span id="Span1" runat="server" />
      <p />
      <button id="Button2" runat="server"
              onserverclick="Button2_OnClick">
         Button2
      </button>
      &nbsp;&nbsp;
      <span id="Span2" runat="server" />
      <p />
      <button id="Button3" runat="server"
              onserverclick="Button3_OnClick">
         Button3
      </button>
      &nbsp;&nbsp;
      <span id="Span3" runat="server" />
   </form>
</body>
</html>

請參閱

參考

HtmlForm

其他資源

HTML 伺服器控制項