Почему происходят странные события при сабмите формы?

Есть простая форма:
<form id="form" onsubmit="return false;">
	<input type="text">
	<input type="submit">
</form>


Потом вешаю в хроме на неё отслеживание событий
monitorEvents( document.getElementById('form') )


Делаю submit формы (просто нажатием на enter в текстовом поле), и вижу следующее:


Всё хорошо, но откуда там событие click?
Нагуглить никаких объяснений не смог.

Дело в том, что я вешаю по onclick на document — preventDefault(), в следствии чего перестаёт работать и submit формы, т.к. там почему-то тоже срабатывает click.
Испытание проводилось на сфеерической форме в вакууме, т.е. ничего дополнительно не мешает, не вешается и т.д.
  • Вопрос задан
  • 2743 просмотра
Решения вопроса 1
taliban
@taliban
php программист
так как у вас уже есть функция которая клик обрабатывает, впишите туда алерт и проверьте правильно ли хром мониторит события, возможно тут его беда.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@Makito
дело в том, что по умолчанию, если какое либо поле в форме получает фокус, то «псевдофокус» автоматически ставится на кнопку отправки формы (в ие это отображается как рамка из точек на кнопке), поэтому при клике на enter срабатывает отправка формы, а событие click с кнопки всплывает до form.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы