Попытка «отправить» мою форму при нажатии Enter не удалась - PullRequest
0 голосов
/ 10 ноября 2011

У меня есть форма со скрытой кнопкой отправки.

Когда я пытаюсь отправить форму с помощью клавиши ввода, происходит сбой (предупреждение не отображается).

Я использую следующие JS:

$(function() {
    $('div.quick-login form').submit(function() {
        alert('test');

        return false;
    });
});

http://jsfiddle.net/MsFY6/

Есть идеи, почему мой код не работает?

UPDATE

Браузер, с которым я тестировал это Chrome.

Ответы [ 4 ]

1 голос
/ 10 ноября 2011

Я всегда помещаю в обработчик .keypress (), который проверяет код ключа.

$("#inputbox").keypress(function(e) {
  if(e.keyCode == 13) {
    alert('test');
  }
});
1 голос
/ 10 ноября 2011

I может воспроизвести ошибку в Safari / Chrome.Причина в том, что кнопка отправки имеет display: none; -ед. Если вы показываете его, он работает , вы также можете сделать visibilty: hidden; и заставить его работать .

Опция может быть привязка к нажатию клавишиа также - ключ возврата, keyCode равен 13.

1 голос
/ 10 ноября 2011

У меня работает в FireFox 8.0 и IE 8. Какой браузер вы используете? У них есть этот отказ от ответственности в документации для submit :

В зависимости от браузера клавиша Enter может вызывать только форму отправка, если форма имеет ровно одно текстовое поле или только при наличии присутствует кнопка отправки Интерфейс не должен полагаться на конкретное поведение для этого ключа, если проблема не вызвана Наблюдение за событием нажатия клавиш для нажатий клавиши Enter.

Похоже, вы не должны рассчитывать на клавишу Enter.

0 голосов
/ 10 ноября 2011

Я изменил ваш пример:

С кодом: http://jsfiddle.net/MsFY6/7/

С скрытой видимостью: http://jsfiddle.net/MsFY6/8/

...