Поведение автозаполнения пользовательского интерфейса jQuery. Как искать свободный текст при вводе?

первый вопрос (и, надеюсь, но сомнительно, мой единственный)

Я использую автозаполнение пользовательского интерфейса jQuery . Вот пример кода для репликации моей проблемы.

var suggestions = ["C", "Clojure", "JavaScript", "Perl", "PHP"];

$("#autocomplete").autocomplete({
    source: suggestions
});

Когда пользователь набирает «J», ему будут представлены предложения «Clojure» и «JavaScript».

Я пропустил Java из этого списка, если пользователь хочет для поиска Java они набирают «Java», нажимают клавишу ввода, но форма не отправляется. Если вы добавите пробел, предложение «JavaScript» исчезнет, ​​и форму можно будет отправить, нажав клавишу ввода.

Я создаю бесплатный поиск, я хочу, чтобы пользователи могли выполнять поиск, нажимая Enter, даже если есть доступные предложения.

$("#autocomplete").keypress(function(event) {
  alert(event.keyCode);
  if (event.keyCode=='13') $this.closest('form').submit();
});

Я попробовал описанное выше, думая, что могу вручную обнаружить нажатие клавиши submit и отправить форму, но предупреждение показывает, что обнаружены все ключи, ЗА ИСКЛЮЧЕНИЕМ отправки, которая, кажется, подавляется автозаполнением.

Любая помощь приветствуется! Спасибо.

9
задан Yi Jiang 24 September 2010 в 10:05
поделиться