40 votes

Effectuer l'événement de clic du bouton lorsque l'utilisateur appuie sur la touche Entrée dans la zone de texte

<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>

Je dois effectuer un événement de clic Button1 lorsque l'utilisateur appuie sur Enter key dans Textbox1

92voto

Harun Points 1939

Placez votre formulaire dans un contrôle de panneau asp.net et définissez son attribut defaultButton avec votre ID de bouton. Voir le code ci-dessous :

  <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>

J'espère que ça vous aidera...

15voto

Muhammad Akhtar Points 32101

Dans l'événement de chargement de page aspx, ajoutez un onkeypress à la boîte.

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

Ensuite, ajoutez ce javascript pour évaluer la pression de la touche, et si c'est « Entrée », cliquez sur le bouton droit.

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

2voto

DIZAD Points 86

dans le code html uniquement, ajoutez un panneau qui contient les contrôles de la page. À l'intérieur du panneau, ajoutez une ligne DefaultButton = "buttonNameThatClicksAtEnter". Voir l'exemple ci-dessous, il ne devrait y avoir rien d'autre requis.

<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!

0voto

40-Love Points 1333

Vous pouvez le faire avec 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" />

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X