Forum Webscript.Ru

Дизайн и Верстка => Всё о Html => Тема начата: Forza от 25 Июля 2004, 20:22:27

Название: submit формы по нажатию на Enter
Отправлено: Forza от 25 Июля 2004, 20:22:27
Заметил я забавную вещь: если в форме одно текстовое поле, то по нажатию на Enter во время редактирование текстового поля происходит submit формы. Если добавить второе текстовое поле, то нет никакой реакции на Enter.
В чём грабли? Как это можно исправить (чтобы по Enter\'у submit был всегда!)?

Вот пример форм, реагирующей и нереагирующей на Enter:
 enctype="multipart/form-data">
Форма, не реагирующая на Enter (2 текстовых поля)

логин



пароль






enctype="multipart/form-data">
Форма, реагирующая на Enter (1 текстовое поле)

логин




Название: submit формы по нажатию на Enter
Отправлено: AliMamed от 25 Июля 2004, 22:57:04
а где сабмиты? вопрос не по хтмлю а по браузерам. в разных браузерах будет поразному
Название: submit формы по нажатию на Enter
Отправлено: Forza от 26 Июля 2004, 02:17:12
В обоих случаях сабмит в виде image, т.е. . Но наличие или отсутствие этого никак не влияет на проблему, что при изменении количества с одного до двух форма перестаёт реагировать на Enter.

Браузер - шестой Эксплорер.
Но я думаю, дело не в нём: неоднократно приходилось заполнять на сайтах большие формы, которые сабмитились обыкновеным нажатием на Enter.

Можно как-нибудь повесить на нажатие Enter\'а в форме её сабмит? Или это вопрос уже в форум про JavaScript? ;)
Название: submit формы по нажатию на Enter
Отправлено: Forza от 26 Июля 2004, 14:58:51
Итак, в ходе экспериментов было выяснено (IE 6.0):
а) форма с одним текстовым полем - сабмитится по нажатию на Enter всегда,
б) форма с двумя текстовыми полями - сабмитится по энтеру, только если есть в форме .

Т.к. сабмит формы надо делать по нажатию на картинку , то в форму нельзя ставить .

Пришлось передрать из книжки нижеследующее:

...

Как видно, это универсальный способ, который должен работать и в Эксплорере, и в Навигаторе. В книжке рассматривался пример с нажатием на стрелки, и было указано, что у них разные коды в разных броузерах. В нетскейпе у Enter тоже будет код 13?

Ну и главный вопрос - это самый простой способ решить эту проблему?
Название: submit формы по нажатию на Enter
Отправлено: ThE0ReTiC от 26 Июля 2004, 15:47:38
Цитировать
Forza:
В нетскейпе у Enter тоже будет код 13?

это не от браузера зависит а от кодовой таблицы =)
первые 127 символов всегда одни и теже.
еще со времен ДОСа =)
Название: submit формы по нажатию на Enter
Отправлено: Forza от 26 Июля 2004, 15:51:43
Ну да, я тоже так думал.

Но в моей книге написано: "Кроме того, коды стрелок в Netscape 4 отличаются от кодов в остальных браузерах: 28, 29. Для других браузеров коды левой и правой стрелок - 37 и 39 соответственно".
В чём подвох?

p.s. Предположу, что у стрелок двухбайтных код, да? И ловя 28,29 или 37,39, мы ловим только один из байтов (что-то такое припоминаю из программирования на Си в институте).

А по существу вопроса что можешь сказать, о Главный по тарелочкам?  ;)
Название: submit формы по нажатию на Enter
Отправлено: pedlib от 06 Июля 2005, 12:50:26
В сокращенном виде, если не ошибаюсь, будет
Название: submit формы по нажатию на Enter
Отправлено: CGVictor от 06 Июля 2005, 13:46:24
pedlib
Цитировать
pedlib:
false;}">

заменить на
Цитировать
CGVictor:
false;};">

иначе в некоторых IE откажется работать.
Название: submit формы по нажатию на Enter
Отправлено: CGVictor от 09 Марта 2009, 23:34:00
[m] Тема 2005 года - закрыта (spam).