有ASP.NET里面用了form runat=server的表单的时候,里面的﹤asp:button .. 总不能按个回车提交表单,很是不爽。
现在终于发现了一个属性可以干这个事情,用 this.Form.DefaultButton = "ContentPlaceHolder1$btsubmit";
值得注意的是,如果用了masterPage(母板页),那么要在按钮ID前加上母板的ID:ContentPlaceHolderID和一个美元符($)
C#实现代码如下:
﹤%@ Page Language="C#" MasterPageFile="~/MasterPage.master" AutoEventWireup="true" CodeFile="login.aspx.cs" Inherits="login" %﹥
﹤asp:Content ID="Content1" ContentPlaceHolderID="ContentPlaceHolder1" Runat="Server"﹥
﹤asp:TextBox runat="server" ID="wd" ﹥﹤/asp:TextBox﹥
﹤asp:Button ID="btsubmit" runat="server" Text="提交" OnClick="btsubmit_Click" /﹥
...
...
...
﹤/asp:Content﹥
(1)含母板页的类中:
protected void Page_Load(object sender, EventArgs e)
{
this.Form.DefaultButton = "ContentPlaceHolder1$btsubmit";
}
或者在内容页
protected void Page_Load(object sender, EventArgs e)
{
this.Page.Form.DefaultButton = "ContentPlaceHolder1$btsubmit";
}
(2)非母板页的类中:
protected void Page_Load(object sender, EventArgs e)
{
this.Form.DefaultButton = "btsubmit";
}