У меня есть div, который содержит различные неизвестные входы. Некоторые из этих входов могут или не могут быть зарегистрированы как текстовые входы jqueryui autocomplete. Как найти объекты автозаполнения, которые зарегистрированы и уничтожить их с помощью метода .autocomplete ('destroy')?Как можно найти все автозаполнения jqueryui в div?
ответ
Метод 1
виджеты Jquery UI (и другие из них) построен с использованием виджетов Фабрика автоматически определяет псевдо-селектор:
$('input:ui-autocomplete').autocomplete('destroy');
и он будет получать входы, которые имеют автозаполнения пример прилагается.
Обратите внимание, что работает только с виджетами, созданными с использованием jQuery UI Widget Factory (и других, которые явно реализуют такое поведение). Внутри библиотеки jQuery UI несколько виджетов не реализуют эту фабрику, например, Datepicker, но Autocomplete.
Метод 2
автозаполнения плагин добавляет класс CSS `.ui-автозаполнения-вход» в соответствующие поля ввода, которые были инициализированы с помощью плагина, так что вы можете сделать:
$('.ui-autocomplete-input').autocomplete('destroy');
Предполагая, что ваш div имеет идентификатор, используйте следующий селектор: #your_div_id .ui-autocomplete-input