Asp.Net回车键触发Button的OnClick事件解决方案

在aspx页面有textbox文本框,还有三个button按钮。启用textbox的TextChanged事件和button的click事件。

问题:

现在在textbox文本框输入完数据按“回车”后,会触发TextChanged事件,但同时还会触发该页面第一个button按钮的Click事件。

解决方法一:

当在文本框中敲回车的时候,表单提交。因为在.net中一个Page只有一个form表单。所以也就有一个Sumbit事件。

当UseSubmitBehavior的属性是True的时候,表单的提交就会触发此事件。

先后顺序是先触发点击事件,然后触发 UseSubmitBehavior为True的button的click时间。

当然如果有多个button就会默认的触发第一个button事件。

为了解决该问题将UseSubmitBehavior改为false即可。(多个button时,UseSubmitBehavior全改为false。)

解决方法二:

(当你要用button的OnClientClick弹出确认窗口的时候,如果UseSubmitBehavior为false,不论你选择什么都不会执行服务器的button的OnClick代码,这时候就需要用解决方法二)

解决方法来自孟子E章:

private   void   Page_Load(object   sender,   System.EventArgs   e)    {      TextBox1.Attributes.Add("onkeydown","if(event.keyCode==13)   {this.blur();return   false}");    }    private   void   Button1_Click(object   sender,   System.EventArgs   e)    {      Response.Write("Button");    }    private   void   TextBox1_TextChanged(object   sender,   System.EventArgs   e)    {Response.Write(TextBox1.Text);    }

 (确保TextBox1的AutoPostBack属性为True,实际使用中发现,只要设置为true,不需要上面的代码也可以解决问题。)

 另外,可以设置 客户端ID.focus()  or  设置tabIndex 属性。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏菩提树下的杨过

如何检测本页中的iframe是否“加载”完成

这其实是上一篇"iframe框架取值兼容ie/firefox/chrome的写法"的扩展应用: 应用场景:iframe个人感觉最独特的应用之一就是配合P3P协议...

21450
来自专栏我和未来有约会

Silverlight控件 - ScatterView

Silverlight控件 - ScatterView 简介: ScatterView是一个布局控件,允许对其内部的子控件进行鼠标拖拽、扔出等操作。 项...

38960
来自专栏React Native开发圈

React Native 表格组件

npm install--save react-native-data-table

23530
来自专栏对角另一面

谷歌插件Image downloader开发之popup

Image downloader的交互逻辑是这样的:用户点击Image downloader的图标,会向页面(content script,见上一篇文章:谷歌插...

22300
来自专栏子勰随笔

iMac下制作含透明度图片及判断图片透明度

17930
来自专栏HTML5学堂

一起详析“图片预加载”

HTML5学堂:2014年年初的时候,曾经在自己的博客“独行冰海”里写过关于图片预加载和懒加载的博文,当时的文章当中没有写什么关于预载的代码范例,当前打算把预载...

1.6K80
来自专栏林德熙的博客

win10 UWP 标题栏后退

BackRequested 后退方法,如何获得参见:c# 设计模式 责任链.md 注意不要在每个页面的构造都使用添加事件,如果这样子,那么就会出现按一下后退出现...

7310
来自专栏守望轩

Visual Studio 2008 每日提示(十四)

#131、你为什么会把窗体设置成为浮动(模式) 原文链接:Why you would want to make a Tool Window Floating ...

36070
来自专栏我和未来有约会

近期codeplex上的Silverlight开源控件

http://silverlightdragdrop.codeplex.com/ 一个对元素拖放控制的项目。 http://sl2videoplayer.c...

33330
来自专栏web开发

VUE路由去除#问题

最近自己在写一个vue的小型管理系统,在浏览器中看到的路由都是带有#的,很是不好看。为了解决此问题,大家一般都会想到:mode: 'history'。可是在开发...

37140

扫码关注云+社区

领取腾讯云代金券