У меня есть форма с некоторыми общими полями, такими как «электронная почта». У меня есть JavaScript, который ловит ключ возврата (13) и отправляет форму, но тот же эффект наблюдался при использовании свойства defaultButton на панели хоста.
Если пользователь работает в IE и вводит свой адрес электронной почты, затем выбирает элемент из встроенного автозаполнения браузера, нажав клавишу ВВОД, нажатие клавиш не отправляется в Javascript. ХОРОШО.
Однако в Firefox текстовое поле получает нажатие клавиши ВВОД и хочет отправить форму, которая не заполнена.
Кто-нибудь знает, как остановить это, кроме отключения автозаполнения? Я не могу найти способ обнаружить, что нажатие клавиши действительно происходит из списка автозаполнения.
Я использую asp.net и jQuery.
Изменить - уточнить:
Нажатие Enter на элементе в автозаполнении НЕ должно отправлять форму. Поведение IE корректно (на этот раз!).
Мой обработчик событий сам по себе просто:
при нажатии клавиши вверх (также пытался нажать клавишу) - if (e.which == 13) submitForm ();
Проблема в том, что я не знаю, как определить, что нажатие клавиши ENTER на самом деле происходило из управления автозаполнением