ASP.NET/Button、LinkButton和ImageButton
< ASP.NET
ASP.NET Framework包含三個用於向服務器端提交表單的控件:Button、LinkButton和ImageButton。這三個控件擁有同樣的功能,但每種控件的外觀界面不同。Button控件生成一個按鈕,LinkButton控件生成一個鏈接。LinkButton控件實際上生成一個超鏈接,用href="javascript:__doPostBack('buttonName',)"把表單傳回服務器端。ImageButton控件總是顯示圖片。
Form控件或Panel控件的DefaultButton屬性來指定表單的默認按鈕。指定一個默認按鈕,就可以按鍵盤上的回車鍵來調用這個按鈕。
<form id="form1" runat="server">
<div>
<asp:Button id="btnSubmit" Text="Submit" OnClick="btnSubmit_Click" OnClientClick="return confirm('Are you sure?');" Runat="server" /> <br />
<asp:Label id="lblTime" Runat="server" /><br />
<asp:LinkButton id="lnkSubmit" Text="Submit" OnClick="lnkSubmit_Click" Runat="server" /><br />
<asp:Label id="lblResults" Runat="server" /><br />
<asp:ImageButton id="btnSubmit" ImageUrl="Submit.gif" AlternateText="Submit Form" Runat="server" OnClick="btnSubmit_Click" /><br />
<asp:Label id="lblResults" Runat="server" /><br />
</div>
</form>
Button控件支持下列屬性(不完全列表):
- AccessKey——指定一個導向Button控件的鍵。
- CommandArgument——用於指定傳給Command事件的命令參數。
- CommandName——指定傳給Command事件的命令名。
- Enable——用于禁用該Button控件。
- OnClientClick——指定點擊按鈕時執行的客戶端腳本。客戶端點擊該按鈕時,執行JavaScript腳本。該腳本顯示一個確認對話框。如果確認對話框返回False,那麼取消按鈕點擊事件,包含該按鈕的表單也不會傳回服務器端。
- PostBackUrl——用於設置將表單傳給某個頁面。在新頁面的Page_Load事件處理程序中,PreviousPage屬性用來得到前一個頁面的引用。再用FindControl()方法從前頁面中獲取指定控件的值。
- TabIndex——設置Button控件的Tab順序。
- Text——用於標註Button控件。
- UseSubmitBehavior——用於使用JavaScript回傳表單。
- 像大多數ASP.NET控件一樣,Button控件支持擴展屬性,只需簡單地為控件添加任意的屬性,就可以處理其他的客戶端事件。如 onmouseover="this.value='Click Here!'"
Button控件支持下面的方法:
- Focus()——用於把初始表單焦點設為該Button控件。
Button控件還支持下面兩個事件:
- Click——點擊Button控件時引發。 ImageButton控件的Click事件處理程序不同於其他兩個按鈕控件。傳遞給事件處理程序的第二個參數是ImageClickEventArgs類的實例。此類有下面兩個屬性:X——用戶點擊圖片時的X坐標。Y——用戶點擊圖片時的Y坐標。
- Command——點擊Button控件時引發。CommandName和CommandArgument傳給這個事件。