автозаполнение jqueryui прекращает стрельбу - PullRequest
3 голосов
/ 05 октября 2011

Я работаю над примером JSONP автозаполнения jqueryui здесь: http://jqueryui.com/demos/autocomplete/#remote-jsonp

Даже в их собственной демоверсии мне удалось исправить эту ошибку;к сожалению, я не могу последовательно воспроизвести его.

Если я начну печатать в текстовом поле, он будет автоматически заполняться.
Если я не выберу результат, а затем "размытие"«элемент управления (сфокусируйтесь на чем-то другом), а затем вернитесь к элементу управления и начните вводить снова, функция автозаполнения« источник »(иногда) просто больше не срабатывает, никогда больше, пока я не обновлю страницу.Я проверил это, поместив некоторый код регистрации в функцию источника;функция просто перестает вызываться.Я не могу определить точное обстоятельство, в котором это происходит.

Это известная ошибка?Что-то может быть исправлено в следующем выпуске?

Редактировать: выделил жирным шрифтом следующее утверждение, потому что это самая важная часть вопроса в ответ на голосование против оригинала:
Есть ли способ «перезагрузить»автозаполнение объекта, чтобы он снова начал работать в этом случае?Я попытался запустить мой $ ("# foo"). Autocomplete (...) еще раз, когда объект теряет фокус, но это не помогает.

Спасибо!

1 Ответ

1 голос
/ 05 октября 2011

Вы можете сделать что-то вроде этого:

$('input.autocomplete').live('focus',function(){

    $(this).autocomplete({
       ...your autocomplete options   
    });
});

, если ваш источник является вызовом или методом ajax, я бы предложил сохранить значение вашего источника в переменной

...