HTML 伺服器控制項主要是保證服務端運作的增強型標準HTML 控制項。 HTML 控制項不是由伺服器處理,而是被傳送到瀏覽器進行顯示,例如頁面標題標籤,連結標籤及輸入元素。
透過新增runat = "server" 屬性和一個id 屬性,它們可被特定地轉換為一個伺服器控制項,應用於伺服器端處理。
例如,HTML 輸入控制項:
<input type="text" size="40">
它可以透過添加runat 和id 屬性被轉換成一個伺服器控制項:
<input type="text" id="testtext" size="40" runat="server">
儘管ASP.NET 伺服器控制項可以完成HTML 伺服器控制項執行的每一項工作,HTML 控制項在下列情況仍具有優勢:
使用靜態表達到佈局目的。
轉換一個HTML 頁面到ASP.NET 下運作。
下面這個表格介紹了HTML 伺服器控制項:
控制項名稱 | HTML 標籤 |
---|---|
HtmlHead | <head>element |
HtmlInputButton | <input type=button|submit|reset> |
HtmlInputCheckbox | <input type=checkbox> |
HtmlInputFile | <input type = file> |
HtmlInputHidden | <input type = hidden> |
HtmlInputImage | <input type = image> |
HtmlInputPassword | <input type = password> |
HtmlInputRadioButton | <input type = radio> |
HtmlInputReset | <input type = reset> |
HtmlText | <input type = text|password> |
HtmlImage | <img> element |
HtmlLink | <link> element |
HtmlAnchor | <a> element |
HtmlButton | <button> element |
HtmlButton | <button> element |
HtmlForm | <form> element |
HtmlTable | <table> element |
HtmlTableCell | <td> and <th> |
HtmlTableRow | <tr> element |
HtmlTitle | <title> element |
HtmlSelect | <select&t; element |
HtmlGenericControl | 未列出的所有HTML 控件 |
以下實例使用了基本的HTML 表格進行佈局。它使用了用於從用戶獲得輸入諸如姓名,地址,城市,州等的框,還有一個按鈕控件,該控件被點擊後能夠獲取該表最後一行中顯示的用戶數據。
頁面在設計視圖中應如下所示:
內容頁面的程式碼顯示了HTML 表格元素進行佈局的應用。
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="htmlserver._Default" %><!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 runat="server"> <title>Untitled Page</title> <style type="text/css"> .style1 { width: 156px; } .style2 { width: 332px; } </style> </head> <body> <form id="form1" runat="server"> <div> <table> <tr> <td>Name:</td> <td> <asp:TextBox ID="txtname" runat="server" > </asp:TextBox> </td> </tr> <tr> <td>Street</td> <td> <asp:TextBox ID="txtstreet" runat="server" > </asp:TextBox> </td> </tr> <tr> <td>City</td> <td> <asp:TextBox ID="txtcity" runat="server" > </asp:TextBox> </td> </tr> <tr> <td>State</td> <td> <asp:TextBox ID="txtstate" runat="server"> </asp:TextBox> </td> </tr> <tr> <td> </td> <td></td> </tr> <tr> <td></td> <td ID="displayrow" runat ="server"> </td> </tr> </table> </div> <asp:Button ID="Button1" runat="server" onclick="Button1_Click" Text="Click" /> </form> </body></html>
按鈕控制項的後台程式碼為:
protected void Button1_Click(object sender, EventArgs e){ string str = ""; str += txtname.Text + "<br />"; str += txtstreet.Text + "<br />"; str += txtcity.Text + "<br />"; str += txtstate.Text + "<br />"; displayrow.InnerHtml = str;}
觀察以下陳述:
標準HTML 標籤已被使用進行頁面佈局。
HTML 表格的最後一行用於資料顯示。它需要伺服器端進行加工,因此為其添加ID 屬性和runat 屬性。