Остановка автозаполнения jQuery при потере фокуса поля - PullRequest
2 голосов
/ 22 марта 2012

У меня есть поле ввода, которое использует автозаполнение, чтобы показать список возможных совпадений для текста, который вводит пользователь, и под этим полем находится другое поле ввода.Когда пользователь вводит текст, а затем нажимает на следующее поле под ним, раскрывающийся список «Автозаполнение» охватывает это поле ввода.

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

Мой код выглядит примерно так.

var inputID = "#"+model+field;
$(inputID).autocomplete({
    source: autoURL,
    delay: 0,
    minLength: 1
});

Модель и поле определены как аргументы функции.

Я думал, что смогуприкрепить событие, чтобы поймать потерю фокуса, а затем вызвать что-то вроде $(inputID).abort(), чтобы отменить автозаполнение.Или я могу добавить обработчик события фокуса в поле под ним, чтобы вызвать прерывание.Ничто из того, что я пробовал, не сработало, и я посмотрел на код автозаполнения и не вижу способа его остановить.

Я использую jQuery 1.7.1 и jQuery UI 1.8.18

Любая помощь будет отличной.

Спасибо

1 Ответ

1 голос
/ 22 марта 2012

Согласно документации , вы можете позвонить $(inputID).autocomplete('close'); для закрытия автозаполнения.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...