Realizar evento de clic de button cuando el usuario presiona la tecla Entrar en el textbox

<asp:UpdatePanel ID="UpdatePanel1" runat="server" UpdateMode="Conditional"> <ContentTemplate> <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox> <asp:Button ID="Button1" runat="server" onclick="Button1_Click" Text="Send" /> </ContentTemplate> </asp:UpdatePanel> 

Tengo que realizar el evento Button1 click cuando el usuario presiona la Enter key en Textbox1

En el evento de carga de página aspx, agregue una onkeypress a la caja.

 this.TextBox1.Attributes.Add( "onkeypress", "button_click(this,'" + this.Button1.ClientID + "')"); 

A continuación, agregue este javascript para evaluar la pulsación de la tecla, y si es "enter", click el button derecho.

 <script> function button_click(objTextBox,objBtnID) { if(window.event.keyCode==13) { document.getElementById(objBtnID).focus(); document.getElementById(objBtnID).click(); } } </script> 

Coloque su formulario dentro de un control de panel asp.net y configure su atributo defaultButton con su ID de button. Vea el código a continuación:

  <asp:Panel ID="Panel1" runat="server" DefaultButton="Button1"> <asp:UpdatePanel ID="UpdatePanel1" runat="server" UpdateMode="Conditional"> <ContentTemplate> <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox> <asp:Button ID="Button1" runat="server" onclick="Button1_Click" Text="Send" /> </ContentTemplate> </asp:UpdatePanel> </asp:Panel> 

Espero que esto te ayudará…

Codeproject tiene una solución completa para esto:

http://www.codeproject.com/Articles/17241/Capturing-the-Enter-key-to-cause-a-button-click

y como dice el artículo: "decida qué solución se ajusta mejor a sus necesidades"

=================== EDITADO RESPUESTA =========================

El enlace mencionado anteriormente, habla de dos forms de capturar el evento "Introducir key":

Javascript (vincula el evento onKeyPress al object y crea una function javascript para verificar qué tecla se presionó y hacer tu lógica)

_Page_Load en el código detrás: _

  //Add the javascript so we know where we want the enter key press to go if (!IsPostBack) { txtboxFirstName.Attributes.Add("onKeyPress", "doClick('" + btnSearch.ClientID + "',event)"); txtboxLastName.Attributes.Add("onKeyPress", "doClick('" + btnSearch.ClientID + "',event)"); } 

Código Javascript:

 <SCRIPT type=text/javascript> function doClick(buttonName,e) { //the purpose of this function is to allow the enter key to //point to the correct button to click. var key; if(window.event) key = window.event.keyCode; //IE else key = e.which; //firefox if (key == 13) { //Get the button the user wants to have clicked var btn = document.getElementById(buttonName); if (btn != null) { //If we find the button click it btn.click(); event.keyCode = 0 } } } </SCRIPT> 

Panel de control

 <asp:Panel ID="panSearch" runat="server" DefaultButton="btnSearch2" Width="100%" > <asp:TextBox ID="txtboxFirstName2" runat="server" ></asp:TextBox> </asp:Panel> 

Citando:

Observe que la label del Panel tiene una propiedad llamada DefaultButton. Establece esta propiedad en el ID del button en el que desea hacer clic en un evento de introducción de tecla. Por lo tanto, cualquier textbox dentro del Panel dirigirá su tecla Enter al button establecido en la propiedad DefaultButton del Panel

solo en el código html, agregue un panel que contenga los controles de la página. Dentro del panel, agregue una línea DefaultButton = "buttonNameThatClicksAtEnter". Vea el ejemplo a continuación, no debería haber nada más requerido.

 <asp:Panel runat="server" DefaultButton="Button1"> //add this! //here goes all the page controls and the trigger button <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox> <asp:Button ID="Button1" runat="server" onclick="Button1_Click" Text="Send" /> </asp:Panel> //and this too! 

Puedes hacerlo con javascript / jquery:

 <script> function runScript(e) { if (e.keyCode == 13) { $("#myButton").click(); //jquery document.getElementById("myButton").click(); //javascript } } </script> <asp:textbox id="txtUsername" runat="server" onkeypress="return runScript(event)" /> <asp:LinkButton id="myButton" text="Login" runat="server" /> 

Puedes probar:

En HTML:

  <asp:TextBox ID="TextBox1" runat="server" onKeyDown="submitButton(event)"></asp:TextBox> <asp:Button ID="Button1" runat="server" Text="Button" onclick="Button1_Click" /> 

Y javascript:

 function submitButton(event) { if (event.which == 13) { $('#Button1').trigger('click'); } } 

Código detrás:

 protected void Button1_Click(object sender, EventArgs e) { //load data and fill to gridview } // fixed the function view for users 

Espero que esto ayude

usar Jquery o algo aquí es un ejemplo

de él http://riderdesign.com/articles/Check-username-availability-with-JQuery-and-ASP.NET.aspx espero que te ayude más