Chrome: при нажатии Enter в текстовом поле <form>Отправляет страницу без вызова onClick кнопки отправки в этой форме - PullRequest
1 голос
/ 04 июня 2010

У меня есть сценарий, в котором у меня есть 2 кнопки отправки в форме для перехода назад и вперед.

Обе кнопки имеют разные JavaScript, связанные с ним. Это прекрасно работает, если мы нажимаем эти кнопки для навигации.

Но когда в Google Chrome кто-то нажимает клавишу ввода в любом текстовом поле в форме, он не вызывает нажатие кнопки.

Есть ли какое-то решение для этого.

Спасибо

Ответы [ 2 ]

0 голосов
/ 04 июня 2010

в качестве альтернативы, вы можете использовать onsubmit, чтобы делать то, что вы хотели, с помощью нажатия кнопки отправки.

звучит так, как будто вы хотите просто вернуть false, чтобы ничего не происходило, и они должны использовать одну из ваших кнопок.

0 голосов
/ 04 июня 2010

Вам нужно будет перехватить событие keypress и поискать код клавиши 13, к сожалению. Не все браузеры (я думаю, что фактически ни один из них) не вызовут событие click для кнопки отправки, если вы на самом деле не нажали кнопку. Они будут вызывать событие submit в форме.

Таким образом, шаблон становится: Поставьте валидацию (и т. нет клавиш-модификаторов вниз, и от click этой кнопки.

При работе с событиями клавиатуры я нахожу эту страницу неоценимой.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...