Thursday, February 17, 2011

Call a specific button onClick event when the enter key is pressed C#

Hey,

I'm trying to get a specific asp:button onclick event to fire when I press the enter key in a specific asp:textbox control.

The other factor to be taken into account is that the button is within a asp:Login control template.

I've no idea how to do this, suggestions on a postcard please.

From stackoverflow
  • You need to do it with javascript. It's really easy with jQuery.

    You can do something like (off the top of my head, not tested):

    $('#myTextBox').keypress(function(e){
        if(e.which == 13)
            $('#myBtn').click();
    });
    

    Edit: Be aware that although jQuery works exceptionally cross browser, there are some quirks with keypress described here.

    Whoops i didnt see you said the "enter key" i thought you said "any key", yeah in that case use DefaultButton on asp:panel

    David Kemp : You don't need to do this with javascript.
  • You could look at the DefaultButton property of the panel control.

  • Its HtmlForm.DefaultButton

  • You could set the DefaultButton property on the form. Either as an attribute of the form tag in your markup DefaultButton = "btnSubmit" or using something like this in your code-behind:

    Page.Form.DefaultButton = "btnSubmit"
    

0 comments:

Post a Comment