Intereting Posts

Отправка формы с помощью кнопки ввода в форме с несколькими кнопками отправки

У меня есть форма с простым текстовым полем и несколькими кнопками отправки. Когда пользователь нажимает кнопку ввода, я хочу отправить форму с определенной кнопкой отправки, но похоже, что форма просто выбирает первую кнопку. Есть ли способ сообщить браузеру, который вводит кнопку, когда пользователь вводит? Предпочтительно без javascript, но я возьму его, если это единственное решение.

Изменить: у меня нет другого выбора, кроме нескольких кнопок отправки. Это устаревшее приложение.

Здесь нет пути. Самое простое решение – просто убедиться, что первая кнопка отправки в форме – это та, которую вы хотите вызвать кнопкой Enter .

Обратите внимание, что эта кнопка отправки может быть дубликатом кнопки в другом месте формы, и она не должна быть видимой .

Вы можете использовать простой JS, чтобы поймать событие onkeypress:

onkeypress="if ((event.keyCode | event.which) == 13) { document.getElementById('MySubmitButton').click(); return false; }" 

Просто добавьте это в тег текстового поля и замените «MySubmitButton» на идентификатор нужной кнопки отправки.

Примечание: используйте идентификатор, а не имя.

Если у вас есть следующий HTML-код

 

Тогда у вас может быть немного jQuery следующим образом

 $(document).ready(function() { $(this).keydown(function(e) { if (e.keyCode == '13') { $("#form_one").submit(); } }); }); 

Очевидно, вам нужно будет ввести логику, чтобы решить, какую форму отправить.

Кроме того, насколько я знаю, если элемент управления в форме «form_one» имел фокус, и вы попали в него, он автоматически отправил эту форму, содержащую элемент управления.

вы можете просто определить javascript-метод в событии «onclick» или «onkeypress» кнопки, из которого вы хотели получить представленную форму. Но у вас нужно определить, что происходит в функции javascript