我有一个包含搜索功能的用户控件,当我默认加载此用户控件时,我将焦点设置为此搜索textbox
:
<asp:TextBox ID="txtSearch" runat="server"></asp:TextBox>
<asp:ImageButton ID="btnSearch" runat="server" ToolTip="Search" OnClick="btnSearch_Click" />
现在当我按下文本框上的回车键然后控制继续我的主页加载事件,并且主页加载事件包含一个重定向到相应URL的方法。
但这只发生在输入和控制转到主页加载事件,我想停止它。
那么如何防止这种情况?
答案 0 :(得分:2)
我建议你遵循以下方法。将文本框和按钮放在Panel中,并将默认按钮设置为要在输入时激活的按钮。
<asp:Panel ID="panel" runat="server" DefaultButton="btnSearch">
<asp:TextBox id="txtSearch" runat="server" />
<asp:ImageButton ID="btnSearch" runat="server" ToolTip="Search" OnClick="btnSearch_Click" />
</asp:Panel>
答案 1 :(得分:1)
您可以使用以下脚本禁用Enter键:
$('TextBox').keypress(function(event) {
if (event.keyCode == 13) {
event.preventDefault();
}
});
答案 2 :(得分:1)
阻止在文本框中输入密钥
$('[id*="txtSearch"]').keypress(function(e){
if ( e.which == 13 ) return false;
});
使用C#创建KeyPress事件并在其中使用此代码。
if (e.KeyCode == Keys.Enter)
{
e.SuppressKeyPress=true;
}
您可以在文本框中使用onkeypress="__doPostBack(this.name,'OnKeyPress');"
创建活动。
<asp:TextBox ID="txtSearch" runat="server" onkeypress="__doPostBack(this.name,'OnKeyPress');"></asp:TextBox>