JQuery UI Автозаполнение идентификатора и закрыть событие UI параметр - PullRequest
1 голос
/ 22 июля 2011

Я использую jQuery Ui Autocomplete 1.8.14, и я хотел бы сделать две вещи:

Назначить идентификатор для автозаполнения.Например, у меня может быть много автозаполнений на странице, и мне нужен способ идентифицировать каждый из них.В частности, автозаполнение в фоновом режиме генерирует что-то вроде

<ul class="ui-autocomplete ui-menu ui-widget ui-widget-content ui-corner-all" role="listbox" aria-activedescendant="ui-active-menuitem" style="z-index: 1; top: 444px; left: 48px; display: block; width: 118px;">

. Я хотел бы назначить и идентификатор тегу ul.Причина, по которой я хочу сделать это, заключается в следующем:

Событие закрытия и один из параметров ui.В «select» даже это ui заполняется данными, которые используются для создания автозаполнения, но для события закрытия ui пусто.Вот почему я хотел бы иметь идентификатор на теге ul в моем предыдущем вопросе.Если я смогу получить данные ui, мне не нужно беспокоиться об установке идентификатора, хотя я думаю, что это желательная функция, несмотря на это.

Надеюсь, я был достаточно ясен.

РЕДАКТИРОВАТЬ: Очевидно, я не был достаточно ясен :).Надеемся, что следующее поможет прояснить, что я имею в виду: после того, как элемент выбран из автозаполнения, я использую событие select для заполнения других элементов формы с помощью параметра «ui».Это работает все отлично и замечательно.

Однако теперь я хочу сделать следующее: например, при автозаполнении я выписываю элемент, который существует в автозаполнении.Тем не менее, я не выбираю элемент, а вместо этого перейти к следующему элементу формы.То, что я хотел бы сделать, это проверить термин, введенный в автозаполнение, цикл по списку автозаполнения.Если введенный термин соответствует одному из элементов в списке, я просто получаю данные из «прикрепленного объекта», а затем соответствующим образом заполняю элементы формы.

1 Ответ

0 голосов
/ 22 июля 2011

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

Примечание: я только что видел ваш комментарий по этому вопросу, поэтому посмотрими на этой демонстрации.Так что в моей демонстрации данные JSON находятся в другом формате, поэтому может потребоваться некоторая настройка.

О, я только что нашел существующее расширение , которое может уже делать то, что вы хотите (с здесь ) Типично!: -)

Редактировать О, я вижу, большая часть кода уже сделана в вашей скрипке .Все, что вам нужно просто использовать $parentItem.data('item.autocomplete');.

...