asp.net中绑定TextBox回车事件的解决方法

时间:2022-09-17 18:36:19

1.将页面上的回车事件都绑定到按钮上 

复制代码代码如下:


function EnterTextBox(e) 

var msie = (document.all) ? true : false; 
var keycode; 
if(!msie) keycode = window.event ? e.keyCode : e.which; 
else keycode = e.keyCode; 
//alert(keycode); 
if(keycode==13 && document.getElementById('<%=this.txtSearch.ClientID%>').value != "") 

//alert("test"); 
if(msie) 

e.keyCode = 9; 
e.returnValue = false; 

document.getElementById('<%=this.btnSearch.ClientID%>').click(); 


2. 在OnPreRender事件中设定按钮客户端事件 

复制代码代码如下:


protected override void OnPreRender(EventArgs e) 

txtSearch.Attributes.Add("onkeypress", "EnterTextBox(event);") 


大功告成了。 

原文参考:
1.将页面上所有回车事件都绑定到一个按钮上 

复制代码代码如下:


<HEAD> 
<script language="javascript"> 
function EnterTextBox() 

if(event.keyCode == 13 && document.all["TextBox1"].value != "") 

event.keyCode = 9; 
event.returnValue = false; 
document.all["Button1"].click(); 


</script> 
</HEAD> 
<body onkeypress="return EnterTextBox()"> 


2.不同的TextBox绑定不同的Button 

复制代码代码如下:


<HEAD> 
<script language="javascript"> 
function EnterTextBox(button) 

if(event.keyCode == 13) 

event.keyCode = 9; 
event.returnValue = false; 
document.all[button].click(); 


</script> 
</HEAD> 


在对应的cs文件中 
//绑定TextBox回车事件 
TextBoxPortOfDestination.Attributes.Add("onkeypress", "EnterTextBox('ButtonChoose')"); 
TextBoxItemName.Attributes.Add("onkeypress","EnterTextBox('ButtonAdd')"); 
TextBoxCost_PX.Attributes.Add("onkeypress","EnterTextBox('ButtonAdd')"); 
TextBoxCost_1X20.Attributes.Add("onkeypress","EnterTextBox('ButtonAdd')"); 
web代码:

复制代码代码如下:


<fieldset> 
<legend id="LegendDetail" [查詢條件]</legend> 
<table> 
<tr><td> 
<asp:TextBox ID="TextBox 1" runat="server"></asp:TextBox></td> 
</tr> 
<tr> 
<td > 
<asp:Button ID="btn" runat="server" OnClick="btnQuery_Click"/></td> 
</tr> 
</table> 
</fieldset> 


是这样的模式。在textbox回车,调用btnQuery_Click