浅析ASP.NET回车提交事件

发表于:2012-1-04 10:05

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:佳园(cnblogs)    来源:51Testing软件测试网采编

分享:

  有ASP.NET里面用了form runat=server的表单的时候,里面的﹤asp:button .. 总不能按个回车提交表单,很是不爽。

  现在终于发现了一个属性可以干这个事情,用 this.Form.DefaultButton = "ContentPlaceHolder1$btsubmit";

  值得注意的是,如果用了masterPage(母板页),那么要在按钮ID前加上母板的ID:ContentPlaceHolderID和一个美元符($)

  C#实现代码如下:

   1. ﹤%@ Page Language="C#"   
   
2. MasterPageFile="~/MasterPage.master"   
   
3. AutoEventWireup="true"   
   
4. CodeFile="login.aspx.cs"   
   
5. Inherits="login" %﹥  
   
6. ﹤asp:Content ID="Content1"   
   
7. ContentPlaceHolderID="ContentPlaceHolder1"   
   
8. Runat="Server"﹥  
   
9. ﹤asp:TextBox runat="server"   
  
10. ID="wd" ﹥﹤/asp:TextBox﹥  
  
11. ﹤asp:Button ID="btsubmit"   
  
12. runat="server" Text="提交" 
  
13.  OnClick="btsubmit_Click" /﹥  
  
14. ...........................  
  
15. ﹤/asp:Content﹥

  (1)含母板页的类中:

   1protected void Page_Load(object sender, EventArgs e)  
   
2. {  
   
3this.Form.DefaultButton = "ContentPlaceHolder1$btsubmit";  
   
4. }

  或者在内容页

   1protected void Page_Load(object sender, EventArgs e)  
   
2. {  
   
3this.Page.Form.DefaultButton = "ContentPlaceHolder1$btsubmit";  //经测试
   
4. }

  (2)非母板页的类中:

   1protected void Page_Load(object sender, EventArgs e)  
   
2. {  
   
3this.Form.DefaultButton = "btsubmit";  
   
4. }

  (3)用户控件(.ascx)(这部分内容自己总结,已实现)

  在用户控件的窗体外部添加一个

<asp:Panel ID="Panel1" runat="server">
....................
//用户控件的内容
</asp:Panel>

  Cs:

Panel1.DefaultButton = "btsubmit";

  ASP.NET回车提交事件的具体情况就向你介绍到这里,希望对你了解和学习ASP.NET回车提交事件有所帮助。

22/2<12
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号