我有一个用户在条形码中扫描的表单,条形码阅读器会自动在值中输入回车,导致表单提交,因为浏览器选择第一个按钮作为默认值。如果在该文本框中输入值时按下回车键,如何禁用发生的任何事情?
答案 0 :(得分:20)
你需要用javascript来做。在文本框的标记中,添加一个onkeydown处理程序,如下所示:
<asp:TextBox ID="TextBox1" runat="server"
onkeydown = "return (event.keyCode!=13);" >
</asp:TextBox>
如果键是回车键,则返回false,这将取消表单提交。
答案 1 :(得分:4)
将TextBox设置为将文本模式属性设置为“multiline”。然后回车将在TextBox中。
另请参阅here,了解有关使用FireFox时该怎么做的说明。
答案 2 :(得分:0)
private void textbox1_KeyUp(object sender, KeyEventArgs e)
{
if (e.KeyCode == Keys.Enter)
{
//什么都不做
}
}
这可能会对你有所帮助
答案 3 :(得分:0)
处理onkeypress事件并执行类似的操作
if (e.KeyChar == (char)Keys.Enter)
{
// set event handled
e.Handled = true;
}