输入键是“点击”错误的按钮。 asp.net

时间:2017-07-07 18:56:36

标签: asp.net vb.net visual-studio

我有两个asp按钮和一个asp文本框。一个按钮用于注销,另一个按钮用于将文本框(用户名)的内容添加到数据库表中。

一切正常,除非我输入用户名并点击回车键,它会将我注销,即点击退出按钮。

<asp:Button style="float: right;" ID="logout" runat="server" Text="LogOut" /> 
<asp:Label AssociatedControlID="adduser" Text="Add new admin user." runat="server" />
<asp:TextBox ID="adduser" runat="server" placeholder="Enter username here"></asp:TextBox>
<asp:Button ID="adduserbtn" runat="server" Text="Add" />

我通过在面板中包装文本框和adduserbtn按钮并将adduserbtn按钮设置为默认按钮来实现它。

<asp:Button style="float: right;" ID="logout" runat="server" Text="LogOut" /> 
<asp:Panel DefaultButton="adduserbtn" runat="server" ID="addUserPanel">
    <asp:Label AssociatedControlID="adduser" Text="Add new admin user." runat="server" />
    <asp:TextBox ID="adduser" runat="server" placeholder="Enter username here" ></asp:TextBox>
    <asp:Button ID="adduserbtn" runat="server" Text="Add" />
</asp:Panel>

但这更像是一种“黑客”而非修复。有人知道更好/更清洁的方法吗?提前谢谢。

2 个答案:

答案 0 :(得分:1)

你所做的一切都是正确的。这不是一个破解这个功能的ASP.Net。 只需更改代码,如下所示

<asp:Panel DefaultButton="adduserbtn" runat="server" ID="addUserPanel">
    <asp:Button Style="float: right;" ID="logout" runat="server" Text="LogOut" />
    <asp:Label AssociatedControlID="adduser" Text="Add new admin user." runat="server" />
    <asp:TextBox ID="adduser" runat="server" placeholder="Enter username here"></asp:TextBox>
    <asp:Button ID="adduserbtn" runat="server" Text="Add" />
</asp:Panel>

答案 1 :(得分:1)

Partha Thakura与Panel和DefaultButton的答案是正确的,可以在需要按下按钮时使用。但您也可以使用javascript禁用Enter键的单击。我以大表格使用它,因为按Enter键将触发所有验证器或执行包含更多输入字段的表单发布。

<div onkeydown="return (event.keyCode!=13);">
    <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
    <asp:TextBox ID="TextBox2" runat="server"></asp:TextBox>
    <asp:Button ID="Button1" runat="server" Text="Button" />
</div>

请确保您不要在MultiLine TextBox(textarea)上使用它。