Default button not working in asp.net panel

I have an asp.net panel with a default button setting but the button is never trigger when hitting the ENTER button. I searched SO for this question, but could not find any response that works.

How can I get btnRegister to click when the users hits ENTER ?

<asp:Panel runat="server" ID="pnlCustomer" DefaultButton="btnRegister">
    <table width="500px" border="0" cellpadding="0" cellspacing="0">
    <tr>
        <td align="right">
            <asp:Button ID="btnBackToProfile" Text="Back To Profile" runat="server" Enabled="false"
                onclick="btnBackToProfile_Click" />
        </td>
        <td align="right">
            <asp:Button ID="btnClearnForm" Text="Clear Form" runat="server" 
                OnClientClick="ClearForm1()" />
        </td>
        <td align="right">
            <asp:Button id="btnRegister" runat="server" onclientclick="document.getElementById('AlertTime').value = GetSeconds();" Text="Continue" OnClick="btnRegister_Click" />
        </td>
    </tr>
    </table>
</asp:Panel>

Answers:

Thank you for visiting the Q&A section on Magenaut. Please note that all the answers may not help you solve the issue immediately. So please treat them as advisements. If you found the post helpful (or not), leave a comment & I’ll get back to you as soon as possible.

Method 1

The first thing that I like to point here is that the default button is the control that is pressed when the focus is on one of the controls that exist inside this Panel, and not the rest of the page.

The main reason for your issue is because inside this Panel you do not have anything (else than buttons) that can keep the focus of the keyboard and send the enter to the default button.

Something like a text editor, for example: if you place a text editor inside the panel, click on it and then press enter, the default button will be fired.

So when the focus is inside this panel is on a button, and when you press enter the selected button is pressed, not the default one.

Method 2

I had this same issue and discovered that the Panel can’t be outside of the table containing the default button. If you put your Panel inside the cell that has the button it should work.


All methods was sourced from stackoverflow.com or stackexchange.com, is licensed under cc by-sa 2.5, cc by-sa 3.0 and cc by-sa 4.0

0 0 votes
Article Rating
Subscribe
Notify of
guest

0 Comments
Inline Feedbacks
View all comments
0
Would love your thoughts, please comment.x
()
x