Я ищу самый простой способ создать HTML-форму, в которой нет кнопки отправки. Само по себе это достаточно просто, но мне также нужно, чтобы форма не перезагружалась, когда выполняются вещи, похожие на отправку (например, нажатие Enterв текстовом поле).
javascript
html
forms
Мэтт Робертс
источник
источник
Ответы:
Добавьте в форму обработчик onsubmit (через простой js или jquery $ (). Submit (fn)) и верните false, если не выполняются ваши конкретные условия.
Если вы не хотите, чтобы форма отправлялась, когда-либо - в этом случае почему бы просто не пропустить атрибут «действие» в элементе формы?
источник
action
атрибута не является формой в соответствии со стандартами - и фактически вызовет перезагрузку страницы в некоторых браузерах. Я обнаружил, что этоaction="javascript:void(0);"
хорошо работает.Вы захотите включить
action="javascript:void(0);"
в свою форму, чтобы предотвратить перезагрузку страницы и поддерживать стандарт HTML.источник
Просто добавьте это событие в текстовое поле. Это предотвратит отправку при нажатии Enter, и вы можете добавить кнопку отправки или вызвать form.submit () по мере необходимости:
Например:
источник
Когда вы нажимаете ввод в форме, естественным поведением формы является отправка, чтобы остановить это поведение, которое не является естественным, вы должны предотвратить его отправку (поведение по умолчанию) с помощью jquery:
источник
идея:
и
источник
Два способа решения:
источник
textarea
s и, возможно, выбрать автозаполнение или раскрывающиеся списки, а мобильный телефон может быть еще одним источником проблем.Первый ответ - лучшее решение:
Более конкретно с jquery:
Написание расширений Chrome - это пример того, где у вас может быть форма для ввода данных пользователем, но вы не хотите ее отправлять. Если вы используете action = "javascript: void (0);", код, вероятно, будет работать, но вы столкнетесь с этой проблемой, когда вы получите ошибку о запуске встроенного Javascript.
Если вы полностью пропустите действие, форма перезагрузится, что также нежелательно в некоторых случаях при написании расширения Chrome. Или если у вас есть веб-страница со встроенным калькулятором, где пользователь вводит данные и нажимает «Рассчитать» или что-то в этом роде.
источник