У меня есть форма, где пользователи сканируют штрих-код, считыватель штрих-кодов автоматически вводит возврат каретки в значение, заставляющее форму отправлять, поскольку браузер выбирает первую кнопку по умолчанию. Как я могу отключить что-либо из того, что происходит при нажатии клавиши ввода при вводе значения в это текстовое поле?
Отключить кнопку по умолчанию или ввести ключ в asp.net С#
Ответ 1
Вам нужно будет сделать это с помощью javascript. В вашей разметке для текстового поля добавьте обработчик onkeydown следующим образом:
<asp:TextBox ID="TextBox1" runat="server"
onkeydown = "return (event.keyCode!=13);" >
</asp:TextBox>
Это вернет false, если ключ был ключом ввода, который отменит отправку формы.
Ответ 2
Установите для TextBox свойство текстового режима, заданное как "многострочное". Тогда возврат каретки будет в TextBox.
См. также здесь для заметки о том, что делать, если вы используете FireFox.
Ответ 3
private void textbox1_KeyUp(object sender, KeyEventArgs e)
{
if (e.KeyCode == Keys.Enter)
{
//ничего не делать
}
}
это может помочь вам
Ответ 4
обрабатывать событие onkeypress и делать что-то вроде этого
if (e.KeyChar == (char)Keys.Enter)
{
// set event handled
e.Handled = true;
}