浅析ASP.NET回车提交事件[转]
ASP.NET回车提交事件其实说到底并不是ASP.NET 的编程问题,却是关于html form 中的submit 按钮就是如何规划的具体讨论。 也可归于ASP.NET编程的一部分,那么ASP.NET回车提交事件的具体实现是怎么样的呢?下面我们具体的看下:
ASP.NET回车提交事件实现1、
当你的光标焦点进入某个表单元素的时候,会激活该表单中第一个(流布局顺从左到右,从上至下) type=submit 的按钮(假如有),等待响应回车事件,并提交该form
你可以测试一下代码:
- ﹤form action=""﹥
- ﹤input type="text" /﹥
- ﹤input type="submit" value="submit" /﹥
- ﹤/form﹥
- ﹤form action=""﹥
- ﹤input type="text" /﹥
- ﹤input type="button" value="submit" /﹥
- ﹤/form﹥
ASP.NET回车提交事件实现2.
在 ASP.NET 2.0 中 button 默认呈现为 ﹤input type=submit﹥ 此时不要额外脚本提交form ,submit 按钮就是设计用来提交form 而在 1.x 中则呈现为 ﹤input type=button οnclick=_doPostBack(...) /﹥ 此普通 button 不具备 submit 的上述默认行为
ASP.NET回车提交事件实现3. 禁用此默认行为有法二
(1)设置 form 元素的 defualtButton 为你希望响应回车的真正按钮如下
- ﹤form id="form1"
- runat="server"
- defaultbutton="Button1"﹥
注意 defaultButton = ﹤ ﹤TargetButton.ID﹥﹥ 因此这对复合控件中比如模板的 Button 可能无效(未测试)
(2)修改 button 呈现方式 UseSubmitBehavior="false"
- ﹤asp:Button ID="Button1"
- runat="server" Text="Button"
- οnclick="Button1_Click"
- UseSubmitBehavior="false" /﹥
另外可以通过控制焦点的方式,过滤回车实践,需要记录一笔的是,获取当前页面焦点所在控件的ID:
- document.activeElement
对于ASP.NET.我们在TextBox1中输入内容后,按下enter键后,就执行Button1的click方法。那么在page_load事件方法中写。
- TextBox1.Attributes.Add("onkeydown",
- "if(event.which || event.keyCode){
- if ((event.which == 13) || (event.keyCode == 13)) {
- document.getElementById('"+
- Button1.UniqueID+"').click();return false;}}
- else {return true}; ");
有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";
- }
ASP.NET回车提交事件的具体情况就向你介绍到这里,希望对你了解和学习ASP.NET回车提交事件有所帮助。
浅析ASP.NET回车提交事件[转]相关推荐
- html 禁用回车提交,HTML防止input回车提交表单
原链接:https://blog.csdn.net/ligang2585116/article/details/44699567 自动提交情况说明: 1.默认情况下,单个输入框,无论按钮的type=& ...
- 发现 ASP.Net 的一个关于回车提交的 Bug ? 必须多于一个 Text 域回车提交,Server: ButtonX_Click 才能截获!...
ASP.Net 中: 如果 Text 类型的域只有一个,此时按下回车提交,WebServer 端 ButtonX_Click 竟然截获不到,只能在 WebServer 端 Page_Load 里截获, ...
- javascript监听键盘事件 - 如表单enter回车提交
javascript监听键盘点击时间,比如:enter回车表单提交.禁止F5刷新.禁用鼠标右键等等 本文仅简单做个介绍,权当抛砖引玉了:如果朋友们有更好的建议或者意见,欢迎留言评论. 代码如下: &l ...
- jq html 回车提交表单,jQuery事件之键盘事件(ctrl+Enter回车键提交表单等)
键盘事件处理所有用户在键盘敲击的情况,不管在文本输入区域内部还是外部.键盘事件在不同的浏览器中作用的范围是不一样的,通常这种键盘事件可以作用于 Form元素,a标签元素,window ,documen ...
- 浅析ASP.NET的Page.IsPostBack 属性
浅析ASP.NET的Page.IsPostBack 属性 http://www.sina.com.cn 2008年05月06日 11:33 IT168.com [IT168技术文档] 现在从对ASP ...
- 浅析ASP.NET的Page.IsPostBack 属性http://www.sina.com.cn 2008年05月06日 11:33 IT168.com
浅析ASP.NET的Page.IsPostBack 属性 http://www.sina.com.cn 2008年05月06日 11:33 IT168.com [IT168技术文档] 现在从对ASP ...
- 按回车提交问题: http://www.cnblogs.com/hfyb/archive/2007/01/21/626135.html
aspx页面有文本框和按钮: 文本框:TextBox_InputNum 搜索按钮:Button_DataSearch 要实现的功能是:在文本框输入数据以后,按回车提交(也就是说,按回车可以搜索,按搜索 ...
- php 回车键触发事件,回车触发事件 - 范思哲思考者的个人空间 - OSCHINA - 中文开源技术交流社区...
今天做一个需求,回车实现提交事件. 代码如下: $("#loginform").keydown(function(e){ var e = e || event, keycode = ...
- 不同浏览器对回车提交表单的处理办法(转载)
不同浏览器对回车提交表单的处理办法(转载) 对下面的一段代码,刚开始使用 onClick 事件,在 IE 6.0 中,要按"提交"按扭才起做用,直接回车不行,而在 firefox ...
最新文章
- 图论-最短路Dijkstra算法详解超详 有图解
- 安装ORACLE RAC时修改ssh端口导致CRS无法安装
- 【Linux系统编程】IO标准缓冲区
- 15.8.2 泛型数组
- Vue项目实战04 : Vue 轮询接口的实现
- 使用自定义线程池处理并行数据库流
- ansible配置zabbix自动化安装和配置
- 如何利用java对mysql数据库进行增删改查
- java爬虫代码示例_那些让你代码思维和能力有较大的提升Java源码
- 淘宝开放平台正式环境获取数据(一)
- windows10 右键 manage 没反应
- C语言学习资料----快速排序
- 用户界面设计有效的人机交互策略_学习笔记
- 计算机桌面的理解,电脑桌面的基础知识教程,教你认识电脑桌面
- open-falcon短信报警
- 第九章:iOS应用的界面编辑
- 数字孪生系统有哪些意义?
- Allegro输出DXF文件操作指导
- 张一鸣、王兴、蔡文胜,福建人为什么爱做流量生意
- opcclient源码OPC客户端DA源码(c#开发)