Кнопка внутри формы неожиданно отправляет данные

24.01.2024 · JavaScript

Кнопка внутри формы неожиданно отправляет данные

Кнопка открытия подсказки запускает валидацию и отправку формы. У button внутри формы по умолчанию поведение submit, поэтому вспомогательным действиям нужен явный тип.

<button type="button" class="show-password">Показать пароль</button>
<button type="submit">Войти</button>

Это исправляет причину без общего preventDefault на все нажатия. Настоящую отправку оставьте на событии submit формы: так работает и Enter. Если кнопка управляет раскрывающимся блоком, синхронизируйте aria-expanded. Проверьте мышь, клавиатуру и встроенную браузерную валидацию.

Назад в блог

От идеи —
к первому шагу.

Расскажите, что хотите создать.
Обсудим задачу и наметим следующий шаг.